项目名称:云备份系统
项目功能:
搭建云备份服务器和客户端。
客户端程序运行在Windows下,将指定的目录下的文件备份到服务器上,并且支持浏览器下载,查看。
其中下载支持断点续传,服务器对备份文件进行热点管理,将长时间未访问的文件压缩存储
开发环境:CentOS7.* VS2022 VScode makefile 等
技术特点:json序列化,反序列化,文件压缩,热点管理,断点续传,线程池,读写锁,单例模式
项目模块:
. 服务端:
- 数据管理模块:内存中使用哈希表提高访问效率,持久化使用Json保存格式
- 业务处理模块:搭建http服务器与客户端进行通信,处理客户端的上传下载,查看请求。
- 热点管理模块:对文件进行热点管理,将长时间未访问的文件压缩存储
- 配置信息模块:使用单例模式对服务器配置信息进行管理
客户端
- 数据管理模块:内存中使用哈希表提高访问效率,持久化使用自定义保存格式
- 文件检索模块:基于c++17文件库。对对应目录下的文件进行管理
- 文件备份模块:搭建http客户端上传备份文件
项目拓展:
- 客户端使用QT开发界面级
- 内存的数据也可以使用热点管理
- 压缩文件可以使用线程池处理
- 实现用户管理,不同用户分文件夹进行存储
- 实现断点上传