共计 884 个字符,预计需要花费 3 分钟才能阅读完成。
在理论利用中咱们常常应用到网盘服务或公司外部的文件传输零碎,用来高效的上传下载较大文件。那么这些高性能文件传输服务,都须要分块发送、断点续传性能。
明天 Gitee 举荐的这款开源我的项目就是基于 Netty 实现的大文件分块上传断点续传解决方案,一起来学习吧。
项目名称: fileex
我的项目作者: gjj
我的项目地址:https://gitee.com/gaojunjie03/fileex
我的项目简介
一款基于 netty、http1.1 transfer-encoding:chunked、websocket 实现的大文件分块上传断点续传处理器,同时具备上传 / 下载进度和上传 / 下载速度的推送性能。
我的项目架构
- frontend-service 简略实现的前端页面(依赖 netty-client)
- netty-client netty 客户端 (依赖 netty-common)
- netty-common netty 客户端服务端公共我的项目
- netty-server netty 服务端 (依赖 netty-common)
- mongodb 提供数据服务(上传工作、下载工作、已上传完的文件数据)
应用阐明
1. 浏览器进入前端页面 http://localhost:8789/frontend/file
2. 左上角的圆角加号能够创立根目录
3. 每个目录左边的加号能够创立该目录的子目录
4. 点击目录,能够显示该目录下曾经上传胜利的文件
5. 点击文件上传按钮,弹窗显示本机系统的目录和文件架构
6. 选中某个文件,点击下方确定按钮即可对该文件进行分块传输,同时反对多文件上传(当然了这是要看服务器和本机性能配置是否给力)
7. 上传核心反对断点续传, 即点击暂停,暂停后可点击持续或勾销上传
8. 文件上传胜利后会刷新文件列表
9. 文件列表的每个文件的下载按钮会弹出抉择要下载到本机指定目录。选中目录后,点击下方确定按钮,即可进入下载核心进行文件的下载。
10. 下载核心跟上传核心一样,反对断点续传
如果你想理解更多无关该项目标技术实现细节,就点击前面的链接返回我的项目主页看看吧:https://gitee.com/gaojunjie03/fileex