📟作者主页:慢热的陕西人
🌴专栏链接:C++云备份项目
📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言
主要内容项目一些详细信息的介绍
文章目录
- 云备份项目
- 1.项目介绍
- 2.项目模块
- 3.项目目录
云备份项目
1.项目介绍
-
项目名称:云备份系统
-
项目功能
搭建云备份服务器与客户端,客户端程序运行在客户机上自动将指定目录下的文件备份到服务器,并且能够支持浏览器查看与下载,其中下载支持断点续传功能,并且服务器端对备份的文件进行热点管理,将长时间无访问文件进行压缩存储
-
开发环境
centos7.6/vim、g++、gdb、makefile 以及 windows10/vs2017
-
技术特点
http
客户端/服务器搭建,json
序列化,文件压缩,热点管理,断点续传,线程池,读写锁,单例模式
2.项目模块
-
服务端
数据管理模块:内存中使用hash表存储提高访问效率,持久化使用文件存储管理备份数据
业务处理模块:搭建 http 服务器与客户端进行通信处理客户端的上传,下载,查看请求,并支持断点续
传热点管理模块:对备份的文件进行热点管理,将长时间无访问文件进行压缩存储,节省磁盘空间
-
客户端
数据管理模块:内存中使用hash表存储提高访问效率,持久化使用文件存储管理备份数据
文件检索模块:基于
c++17
文件系统库,遍历获取指定文件夹下所有文件文件备份模块:搭建
http
客户端上传备份文件
3.项目目录
├─Linux_server
│ ├─Pre_study
│ │ ├─Compress
│ │ ├─HttpSC
│ │ └─JsonTest
│ └─Src
│ ├─lib
│ └─packdir
└─windows_client├─.vs│ └─cloud_client│ └─v16│ └─ipch│ └─AutoPCH│ ├─19b6d3945cd029dd│ ├─1cb67c30e91ad0f8│ ├─237881712ad04aeb│ ├─29b7958a98cde97c│ ├─45065a9475585994│ ├─8bcb07d872009bb2│ └─9aa66ce59a6bb07c├─backup├─Debug│ └─cloud_client.tlog└─Release└─cloud_client.tlog
- Linux_server
server端,其中Pre_study项目中涉及到的一些知识点或者一些库的使用,但是之前没有学习到的
Src是server实现的所有源文件和头文件,以及备份文件存储的位置
- windows_client
client端,在windows端运行,上传备份文件,下载,等等
后期会加强支持网页端的访问,增强用户体验
到这本篇博客的内容就到此结束了。
如果觉得本篇博客内容对你有所帮助的话,可以点赞,收藏,顺便关注一下!
如果文章内容有错误,欢迎在评论区指正