文章目录
- 项目总结
- 项目总结
- 项目扩展:
- 常见问题:
项目总结
项目总结
搭建云备份服务器与客户端,客户端程序运行在客户机上自动将指定目录下的文件备份到服务器,并且能够支持浏览器查看与下载,其中下载支持断点续传功能,并且服务器端对备份的文件进行热点管理,将长时间无访问文件进行压缩存储。
http 客户端/服务器搭建,json序列化,文件压缩,热点管理,断点续传,线程池读写锁,单例模式
项目模块:
- 服务端:
数据管理模块: 内存中使用hash表存储提高访问效率,持久化使用文件存储管理备份数据
业务处理模块: 搭建 http 服务器与客户端进行通信处理客户端的上传,下载,查看请求,并支持断点续传
热点管理模块: 对备份的文件进行热点管理,将长时间无访问文件进行压缩存储,节省磁盘空间 - 客户端
数据管理模块: 内存中使用hash表存储提高访问效率,持久化使用文件存储管理备份数据
文件检索模块: 基于c++17 文件系统库,遍历获取指定文件夹下所有文件。
文件备份模块:搭建 http 客户端上传备份文件。
项目扩展:
- 给客户端开发一个好看的界面,让监控目录可以选择
- 内存中的管理的数据也可以采用热点管理
- 压缩模块也可以使用线程池实现
- 实现用户管理,不同的用户分文件夹存储以及查看
- 实现断点上传
- 客户端限速,收费则放开
- 数据库存储
常见问题:
- 说说你的项目
- 为什么做这个项目
- 项目中的某个技术点你是怎么实现的,为什么要用它
- 服务器怎么搭建的,为什么不自己实现
- 多个客户端同时上传文件怎么处理 同名文件怎么处理
- 断点续传怎么实现的
- 云备份的传输速度能达到多少,如何进行测试的
- 你的服务器支持多少个客户端,如何进行测试的