开源软件名称:XEngine_Storage
开源软件地址:https://gitee.com/xengine/XEngine_Storage
开源软件介绍:
中文 || English XEngine_Storage本仓库有开发和主分支,如果要使用,请使用master分支下的代码 介绍c c++ 存储服务 c c++ 文件存储服务 c c++ file storage service 这是一个上传下载服务API网关,不是文件同步服务,也不是云存储. 这个服务的主要目的是为了给有上传下载服务业务需求的用户使用(比如需要开发上传下载服务的开发人员). 此服务器更偏向于存储传输与API接口管理. 目前最好的HTTP存储服务,比NGINX更优秀,更方便管理,代码更简洁.持续维护中... 软件特性基于libXEngine开发并实现的一套简洁高性能跨平台网络存储服务 软件特性: - 支持HTTP协议上传和下载(采用PUT和GET)
- 支持HTTP API接口事件通知与管理
- 支持HTTP加密与证书
- 采用数据库(MYSQL和SQLITE)记录信息
- 支持分布式
- 支持HTTP验证
- 支持详尽的日志和配置信息
- 支持传输速率控制
- 支持任务开始结束代理转发
- 支持P2P
- BT(规划中)
- 数据分发
- 支持秒传和断点续传
- 支持上传和下载重定向
- 支持全速模式和限速模式
安装教程版本需求支持WINDOWS 7SP1和LINUX(UBUNT20.04,CENTOS8)以上系统 XEngine版本需要V7.24或者以上版本 Windows使用VS打开并且编译你需要按照下面的方式配置环境,不然你可能需要自己在项目中设置库目录 XEngine环境XEngine通过GIT下载,参考XEngine项目的readme配置环境 LinuxLinux使用Makefile编译 UBUNTU20.04 x64或者CENTOS8 x64均可 编译命令在XEngine_Source目录下执行命令 make 编译 make FLAGS=InstallAll 安装库程序 make FLAGS=CleanAll 清理编译 使用说明- 切换到MASTER分支
- 下载代码
- 编译
- 安装
- 运行
- 通过curl或postman 等三方工具测试上传下载
目录结构- XEngine_Docment 文档目录结构
- XEngine_Release 安装目录结构
- XEngine_Source 源代目录结构
- XEngine_APPClient 客户端演示代码
- XEngine_SQLFile 数据库脚本文件
秒传实现秒传的实现不是靠服务器实现的,而是靠客户端实现的. 上传秒传的实现是先通过HASH查询文件是否在服务器,如果存在就不上传直接提示客户端上传成功. 下载秒传的实现是先通过HASH查询本地文件保存路径,如果存在就直接下载完成. 关于P2PP2P分布式下载已经支持,不过目前只能在局域网中,暂时不支持跨网段,需要等待开发完毕 P2P分布式下载与其他下载工具的超线程下载一样,原理是使用HTTP RANGE字段实现.各位可以通过libcurl等库实现此功能. 当前任务P2P广域网文件查找与下载支持 其他问题你可以参考docment目录下的文档.里面包含了API协议和服务说明. 测试服务器地址:app.xyry.org 或者 159.75.200.173 端口:HTTP业务端口 5100,下载 5101,上传 5102,P2P 5103 参与贡献- Fork 本仓库
- 新建 Feat_xxx 分支
- 提交代码
- 新建 Pull Request
关注我们如果你觉得这个软件对你有帮助,请你给我们一个START吧 提交问题如果你有问题或者发现程序有BUG和意见,可以在issues中提交 |
请发表评论