# 云备份系统 **Repository Path**: HushNow_H/cloud-backup-system ## Basic Information - **Project Name**: 云备份系统 - **Description**: 自动将本地计算机上指定文件夹中需要备份的文件上传备份到服务器中。并且能够随时通过浏览器进行查看并且下载,其中下载过程支持断点续传功能,而服务器也会对上传文件进行热点管理,将非热点文件进行压缩存储,节省磁盘空间 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-02-17 - **Last Updated**: 2024-11-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 云备份系统 #### 介绍 自动将本地计算机上指定文件夹中需要备份的文件上传备份到服务器中。并且能够随时通过浏览器进行查看并且下载,其中下载过程支持断点续传功能,而服务器也会对上传文件进行热点管理,将非热点文件进行压缩存储,节省磁盘空间 #### 实现目标 这个云备份项目需要我们实现两端程序,其中包括部署在用户机的客户端程序,上传需要备份的文件,以及运行在服务器上的服务端程序,实现备份文件的存储和管理,两端合作实现总体的自动云备份功能。 #### 开发环境 • centos7.6/vim • windows11/vs2019 • Makefile • g++ #### 服务端程序负责功能 • 针对客户端上传的文件进行备份存储 • 能够对文件进行热点文件管理,对非热点文件进行压缩存储,节省磁盘空间。 • 支持客户端浏览器查看访问文件列表。 • 支持客户端浏览器下载文件,并且下载支持断点续传。 #### 服务端功能模块划分 • 数据管理模块:负责服务器上备份文件的信息管理。 • 网络通信模块:搭建网络通信服务器,实现与客户端通信。 • 业务处理模块:针对客户端的各个请求进行对应业务处理并响应结果。 • 热点管理模块:负责文件的热点判断,以及非热点文件的压缩存储。 #### 客户端程序负责功能 • 能够自动检测客户机指定文件夹中的文件,并判断是否需要备份 • 将需要备份的文件逐个上传到服务器 #### 客户端功能模块划分 • 数据管理模块:负责客户端备份的文件信息管理,通过这些数据可以确定一个文件是否需要备份。 • 文件检测模块:遍历获取指定文件夹中所有文件路径名称。 • 网络通信模块:搭建网络通信客户端,实现将文件数据备份上传到服务器。