Stream 上传插件介绍

Stream 这个项目主要是为了解决大文件上传, 本程序只是它的一个 Perl 后端的实现. 项目网站是: http://www.twinkling.cn 原始地址是: http://git.oschina.net/jiangdx/stream/wikis/home. 因为它对 HTML5 和 Flash 都支持, 所以很合适做全功能的上传平台. 在这, 感谢作者为我们大家提供这么好的开源项目.支持HTML5、Flash两种方式(跨域)上传

支持多文件一起上传

HTML5方式支持断点续传,拖拽等新特性

兼容性好IE7+, FF3.6+, Chrome*,Safari4+,遨游等主流浏览器

选择文件的按钮完全可以自定义

进度条、速度、剩余时间等附属信息

基本的自定义属性及函数,如文件多选、上传成功的响应函数等

示例代码java实现(StreamServlet, FormDataServlet{commons-fileupload的stream api}, TokenServlet)

注:Chrome没测试最低版本,不想支持IE6

Stream 的 Perl 后端

本后端是使用 Perl 中常用的框架 Mojolicious 实现. 本程序做为后端接收上传过来的大文件的时候, 完全使用的是异步流式处理, 所以就算是单进程, 也可以处理多个上传的请求. 并且不会有多少内存的占用. 因为使用 Mojolicious 实现, 所以需要安装这个框架和一些相关的模块. Perl 中模块的安装需要使用 cpanm 所以先要下载 cpanm .$ wget http://xrl.us/cpanm --no-check-certificate -O /sbin/cpanm

$ chmod +x /sbin/cpanm

然后开始安装$ cpanm Mojolicious EV Digest::MD5

安装

这个 Perl 的后端的 stream 的实现文件都在项目 https://github.com/iakuf/mojolicious-stream-upload 中. 大家需要使用到其中二个文件 stream.pl 和 StreamUpload.conf 所以可以使用任何方法下载这个项目中的文件. 其中 stream.pl 是执行文件, StreamUpload.conf 是配置文件.

stream.pl 可以放在任何路径, StreamUpload.conf 请放到 '/etc' 的目录下.

配置

整个配置文件如下:{

hypnotoad => {

listen => ['http://*:3008'],

user => 'newupload',

group => 'newupload',

},

UploadServer => 'http://xxx.xxxx.com',

CrossOrigins => 'http://xxx.xxxx.com',

FileRepository => '/tmp/',

debug => 1,

log => '/var/log/upload.log',

}

指定用户和组user => 'newupload'

group => 'newupload'

哪些域名的文件, 是可以接收并存储的CrossOrigins => 'http://xxx.xxx.com'

文件存储的目录FileRepository => '/tmp/'

修改服务器启动的端口listen => ['http://*:3008']

启动

hyphotoad 是一个常用的 Perl 后端的 Web 异步服务器, 为 Mojolicious 的原生配置. 多进程, 为 Unix 优化过. 所以使用它来启动,$ hypnotoad stream.pl

现在就可以直接打开这个服务器来进行测试了

java 开源 断点续传,全平台大文件断点续传上传技术 ( 开源项目 Stream )相关推荐

  1. minio实现大文件分片上传+断点续传+预览

    minio实现大文件分片上传+断点续传+预览 只提供后端java代码 思路: 前端分片 校验文件md5是否已经存在 --不存在创建临时桶存分片 校验分块是否已经上传 分块上传 合并分块 校验合成后md ...

  2. 大文件分片上传,断点续传,秒传 实现

    前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...

  3. 大文件分片上传前端框架_无插件实现大文件分片上传,断点续传

    文件上传.gif 1. 简介: 本篇文章基于实际项目的开发,将介绍项目中关于大文件分片上传.文件验证.断点续传.手动重试上传等需求的使用场景及实现: 2. 项目需求 在一个音视频的添加中,既要有音视频 ...

  4. 无插件实现大文件分片上传,断点续传

    代码地址如下: http://www.demodashi.com/demo/11888.html 1. 简介: 本篇文章基于实际项目的开发,将介绍项目中关于大文件分片上传.文件验证.断点续传.手动重试 ...

  5. 使用webuploader组件实现大文件分片上传,断点续传

    无组件断点续传.gif 1. 组件简介 webuploader:是一个以HTML5为主, Flash为辅的文件上传组件,采用大文件分片/并发上传的方式,极大地提高了文件上传的效率,同时兼容多种浏览器版 ...

  6. 大文件分片上传、断点续传

    话前 一开始在做文件上传的时候,没考虑过文件上传失败的问题,因为上传的多数都是几十兆几百兆的文件.但是也有会上传比较大的文件,此时传统的上传直接没了反应,也不知道上传了多少就很头疼.后来网上搜索的关于 ...

  7. Vue实现大文件分片上传,包括断点续传以及上传进度条

    首先解释一下什么是分片上传 分片上传就是把一个大的文件分成若干块,一块一块的传输.这样做的好处可以减少重新上传的开销.比如:如果我们上传的文件是一个很大的文件,那么上传的时间应该会比较久,再加上网络不 ...

  8. Java实现腾讯云COS高级(大文件)上传,不考虑分块

    // 腾讯云COS高级(大文件)上传,不用考虑分块public static URL fileCOS(File file, String key) throws Exception {String S ...

  9. java实现大文件分片上传

    java实现大文件分片上传 在项目中用到了大文件上传功能,最初从网上参考了一些代码来实现,但是最终的上传效果不是很好,速度比较慢. 之前的上传思路是: 前端利用webUploader分片大文件 后端接 ...

最新文章

  1. 【c语言】蓝桥杯算法提高 填充蛋糕
  2. 基于TensorFlow理解三大降维技术:PCA、t-SNE 和自编码器
  3. java android 数组_android中数组的定义与使用
  4. 语义化版本控制规范(SemVer)
  5. 【机器学习】 - 关于合适用均方误差(MSE)何时用交叉熵(cross-entropy)
  6. scala运算符_Scala的所有符号运算符是什么意思?
  7. 自动化运维工具Ansible之roles
  8. python-3.8.0安装
  9. 配置元件--HTTP授权管理器
  10. mac修改了/etc/profile导致所有命令不能用、mac下vim不能使用
  11. 图解sql内外连接和左连接left join和右连接right join
  12. 70部MAYA灯光材质渲染教程合集
  13. pandas计算相关系数
  14. Python进阶读书笔记之(四) set集合
  15. 建立FTP服务器的免费软件
  16. 终于有人把XGBoost 和 LightGBM 讲明白了,项目中最主流的集成算法!
  17. 新来的妹纸 rm -rf 把公司整个数据库删没了!!!
  18. 前端 input 自动填充功能
  19. 前端面试题总结【持续更新···】
  20. PTA基础编程题目集

热门文章

  1. 单片机 rs232 c语言,单片机与RS232串口通信C51程序
  2. 2020年淘宝店铺“补单”失败的原因分析总结
  3. java借助modbus协议实现与设备的通讯,收发信息,实现对设备信息的采集
  4. linux 下竟有想大白菜软件,世界最小Linux系统Tiny Core 3.5 官方最新版下载,大白菜软件...
  5. 《计算机网络》学习总结——物理层 (梳理重点)
  6. 新手上路,安全驾驶,做行车安全的第一责任人
  7. MySQL中删除主键
  8. c语言程序设计循环结构求奇数和,C语言程序设计实验报告循环结构程序设计.doc...
  9. 区块链项目如何包装?点击查看详细流程
  10. 安卓入门-动画(Animation)(由简单的单一动画到复杂的时间顺序叠加动画)(XML实现方式+JAVA实现方式)