# CloudBackup **Repository Path**: intelligent-studio-paru-team/cloud-backup ## Basic Information - **Project Name**: CloudBackup - **Description**: 一个云备份项目,可以自动将本地计算机中指定的文件夹中需要的文件上传到服务器中,并且可以通过浏览器查看和下载。同时支持断点续传、热点管理、压缩存储... - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-04-15 - **Last Updated**: 2024-06-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CloudBackup ## 项目介绍 一个云备份项目,可以自动将本地计算机中指定的文件夹中需要的文件上传到服务器中,并且可以通过浏览器查看和下载。同时支持断点续传、热点管理、压缩存储... ## 支持功能 ### 服务端模块划分 1. 数据管理模块(管理备份文件信息) 2. 网络通信模块(实现和客户端的通信,接受用户的请求) 3. 业务处理模块(上传、下载、列表) 4. 热点管理模块(非热点文件判定和压缩,对非热点文件进行文件压缩存储,并且用时解压) 5. 用户管理模块(支持用户管理,对不同的用户进行备份容量限额) ### 客户端模块划分 1. 数据管理模块(以前备份过的文件信息列表) 2. 网络通信模块(实现和服务端的通信,上传需要备份的文件数据、客户端可以上传多种类型的文件到服务器中进行备份和管理。支持客户端浏览器下载文件,并且支持断点续传) 3. 文件检测模块(监控指定的文件夹,获取文件夹内所有的文件信息) 4. 界面管理模块(使用一定的前端技术进行装饰,支持客户端使用浏览器或者命令行来查看已备份文件列表) ## 技术选型 1. 编程语言:`C98-C99/C++98-C++20` 2. 系统环境:`Linux Ubuntu 22.04 LTS` 3. 协作工具:`git 2.34.1/gitee` 4. 编译器:`gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0` 5. 调试器:`gdb (Ubuntu 12.1-0ubuntu1~22.04) 12.1、Visual Studio 2022 内部调试器` 6. 序列化库:`Protobuf` 7. 流库:`fmt` 8. 日志库:`spdlog` 9. 数据压缩库:`7-zip` 10. 网络库:`poco` 11. 单元测试: `Gtest` 12. 部署技术:`Docker` 13. 数据库:`MySQL、Redis` ## 安装教程 1. Ubuntu22.04 LTS 手动编译,参考 Wiki 的安装脚本和安装细节 2. 下载不同版本的二进制文件 3. 使用 Docker 快速部署 ## 使用说明 待补充... ## 项目原理