概述
介绍
mangos-file是一款基于mangos-go消息中间件纯go语言研发的专门用于文件传输同步工具
编译好的版本(包含win64,amd64,arm64):
已编译稳定版本0.0.8,csdn下载地址:https://blog.csdn.net/lightspear/article/details/121272063
开源仓库地址
gitee地址:https://gitee.com/lightspear/mangos-file
迭代版本gitee下载地址
特点
- 文件无任何依赖可以编译成linux,window,arm平台都能使用
- 单文件根据执行参数可以既可以当服务端用也可以当客户端用
- 支持上传模式和下载模式
- 支持分时段限速下载
- 支持服务端多结点资源
- [下载模式]利用boltdb记录可下载数
- [下载模式]支持配置优先下载规则如:【PriorRule=“/%Y%m%d/”】
- [上传模式]支持配置优先下载规则如:【 PriorRule=“/%Y%m%d/”】来保证优先上传本天
- 支持设定文件分片大小
- 命令行窗口带进度条显示
- 基于websocket协议非常容易用nginx反向代理容易实现7层负载均衡
- 支持低速网络,丢包网络下断点续传,来网自动续传,可配置分片slice大小
服务端配置
#参数执行如下
./mangos-filetransfer.exe -role=server -c server.toml
[App]
Title=""
Port=5000
[ResNodes]
[ResNodes.node1]
RootDir="D:/AllData"
UserName="admin"
UserPwd="123456"
[ResNodes.node2]
RootDir="D:/AllData"
UserName="admin"
UserPwd="123456"
客户端配置(上传模式)
#参数执行如下
./mangos-filetransfer.exe -role=client -mode=upload -c client.toml
Title=""
GrpcLiveLogAddr = ""
#远程资源地址
WSServerUrl="ws://127.0.0.1:5000"
#资源节点
ResNode="node1"
#远程目录
RemoteDir="/abc/UploadData"
#本地目录
LocalDir="../测试/store"
#密钥
UserPwd="123456"
#单次下载文件片断大小(单位KB)
SliceSize=128
# #循环执行间隔(单位s)(默认不循环ExecInterval=0)
# ExecInterval=1
#上传优先规则,如果一旦配置则优先上传本天此目录
PriorRule="<dirs>/%Y-%m-%d/"
#规则是依次从上到下匹配,没有匹配则不限速
[[LimitRate]]
#限速时段(如果当前时间不在任何一个时段,那么直接不限速)
TimeRange="07:00~20:00"
#限速大小(单位KB)
Rate=128
客户端配置(下载模式)
#参数执行如下
./mangos-filetransfer.exe -role=client -mode=download -c client.toml
Title=""
GrpcLiveLogAddr = ""
#远程资源地址
WSServerUrl="ws://127.0.0.1:5000"
#资源节点
ResNode="node1"
#远程目录
RemoteDir="/abc/UploadData"
#本地目录
LocalDir="../测试/store"
#密钥
UserPwd="123456"
#单次下载文件片断大小(单位KB)
SliceSize=128
# #循环执行间隔(单位s)(默认不循环ExecInterval=0)
# ExecInterval=1
#下载优先规则,如果不配置优先级规则那就是按修改时间优先级
PriorRule="<dirs>/%Y-%m-%d/"
# #起始日期
StartDay="2020-04-01"
# #结束日期
EndDay="2020-12-01"
# 下载记录db
RecordDb="../测试/db/count.db"
#boltdb监控地址可不填
#DbViewHttpPort=9000
# #完成日志文件路径
Completelogfile="../测试/complete/%Y-%m-%d.txt"
#规则是依次从上到下匹配,没有匹配则不限速
[[LimitRate]]
#限速时段(如果当前时间不在任何一个时段,那么直接不限速)
TimeRange="07:00~20:00"
#限速大小(单位KB)
Rate=128
欢迎留言,转载注明出处,有空努力改进
最后
以上就是发嗲芒果为你收集整理的开源一个自己用go语言加mangos-go消息中间件制作的文件同步工具的全部内容,希望文章能够帮你解决开源一个自己用go语言加mangos-go消息中间件制作的文件同步工具所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复