首页 > 其他分享 >WebUploader 超大文件上传和断点续传的实现

WebUploader 超大文件上传和断点续传的实现

时间:2023-05-12 15:13:04浏览次数:49  
标签:断点续传 文件 超大 支持 WebUploader 服务器 上传 源码

 4GB以上超大文件上传和断点续传服务器的实现

随着视频网站和大数据应用的普及,特别是高清视频和4K视频应用的到来,超大文件上传已经成为了日常的基础应用需求。

但是在很多情况下,平台运营方并没有大文件上传和断点续传的开发经验,往往在网上找一些简单的PHP或者Java程序来实现基本的上传功能,然而在实际使用中会发现,这些基于脚本语言实现的上传功能模块性能很弱,一是不支持2GB以上的内容上传;二是无法支持断点续传;三是效率极低,单台服务器最多支持几十个并发上传连接。

当前我们要搭建一个运营级的视频服务平台,在尝试了各种产品均无法满足要求,因此最后花精力自主用C#语言实现了这一高性能上传服务器。 

项目地址:

https://gitee.com/xproer/asp-net/tree/6.5.38/

Hyper Upload Server 超级上传服务器 

这是一款超级文件上传服务器,采用异步I/O架构,采用C++语言编码实现。它支持4GB以上超大文件上传和断点续传,支持Windows和Linux服务器平台,支持任意格式的文件上传,尤其适合大的视频网站应用。单台服务器支持1000并发上传进程,支持PC端和智能手机端主流的浏览器。 

主要特性

1. 服务器端采用异步I/O架设设计,具有高性能I/O处理能力,尤其适用于超大文件上传;

2. 服务器端采用高效内存分配技术确保在运行过程中服务器的内存开销最小化;

3. 完全采用标准协议实现,因此兼容几乎所有的PC端和移动端浏览器;

4. 服务器端采用C++语言自主实现,对上传文件的尺寸无限制,天生支持超大文件上传。

   而基于PHP、JAVA等技术实现的文件上传服务天生无法支持超大文件上传,无法逾越2GB的最大文件尺寸瓶颈;

5. 服务器端采用无缓冲即时写入方式,上传数据写入一步到位。不同于PHP、JAVA等技术实现方式需要两步写入;

6. 服务器端可跨平台编译运行,支持Windows和Linux平台;

7. 高性能,单台服务器支持1000个并发上传进程;

8. 支持4GB以上超大文件上传,文件大小不受限制;

9. 客户端支持采用HTTP标准协议上传;

10.支持断点续传,断网、关机重启均不受影响;

11.支持HTML5浏览器上传进度实时显示;

12.支持IE8及以上浏览器上传进度显示;

13.支持查看客户端在线连接, 查看方法: http://ip:port/lists

14.多浏览器兼容,包括Chrome,Firefox,Safari,IE,Opera,Edge; 

安装 

第一步:解压文件到一个硬盘目录,例如d:\UploadServer 

第二步:修改配置文件

         修改d:\UploadServer\conf\config.xml,文件里的目录设置,

         将所有 dir= 变量指向的目录修改为硬盘上的真实目录,如果没有就按配置文件创建;       

第三步:安装服务

      执行cmd打开命令行窗口按步骤输入以下命令:

      d:  <br/>

      cd UploadServer

      HYFileServer.exe -i  

第四步:启动服务

    打开系统的服务管理器,找到Hyper Http Upload Service服务启动它。

第五步:在浏览器里输入 http://127.0.0.1:8080 查看服务器运行是否正常

    如果上传页面正常显示说明安装成功

    点击其中一个上传文件链接 按钮来上传一个文件。

    如果要在其它主机上访问上传服务器页面,请将127.0.0.1用安装服务器的IP地址取代。

    如果外部机器还不能访问,请检查防火墙的设置,看一下默认的8080端口是否开启。

     

第六步:如果要进一步了解上传服务器,请查看 d:\UploadServer\doc\文件上传服务器使用手册.pdf 文件。

– Linux 下执行安装

./hyupdsrv

如果要作为守护进程,执行

./hyupdsrv -d 

效果展示:

 

视频演示:

 

windows控件安装,,linux-deb控件包安装,linux-rpm控件包安装,php7测试,php5测试,vue-cli-测试,asp.net-IIS Express测试,asp.net-IIS测试,asp.net-阿里云(oss)测试,asp.net-华为云(obs)测试,jsp-springboot测试,ActiveX(x86)源码编译,ActiveX(x64)源码编译,Windows(npapi)源码编译,macOS源码编译,Linux(x86_64)源码编译,Linux(arm)源码编译,Linux(mips-uos)源码编译,Linux(mips-kylin-涉密环境)源码编译,sm4加密传输,压缩传输,

示例下载地址

源代码文档

asp.net源码下载jsp-springboot源码下载jsp-eclipse源码下载jsp-myeclipse源码下载php源码下载csharp-winform源码下载vue-cli源码下载c++源码下载

详细配置信息及思路

标签:断点续传,文件,超大,支持,WebUploader,服务器,上传,源码
From: https://www.cnblogs.com/songsu/p/17394190.html

相关文章

  • C#.NET 超大文件上传和断点续传的实现
    ​IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续传......
  • DVWA文件上传
    Low安全级别:<?php@eval($_POST['cmd']);?>文本编辑器写入一句话木马,保存并改为php文件。上传成功上传,并返回路径打开菜刀客户端连接成功连接反弹shellMedium安全级别上传php脚本发现,上传类型做了限制,只允许上传JPEG和PNG类型。思路一:利用图片马上传将php和jpeg文件用copy命令合......
  • .net core 上传文件大小配置
    发布会的web.config中下增加       Starup.cs增加//上传文件大小限制Kestrel设置services.Configure(options=>{//Setthelimitto256MBoptions.Limits.MaxRequestBodySize=268435456;});//上传文件大小限制IIS设置services.Configure(options=>......
  • springboot 大文件切片上传
    1.前端(vueelementui&原生)初始变量声明: currentFile:{},//当前上传的文件bigFileSliceCount:20,//大文件切片后的子文件数量(也可使用其它限定方式,如按照文件大小,每10MB切一片,此处采用的是固定切片的子文件数量的方式倒推切片大小) 接口:切片上传图片&合并......
  • SpringMVC18_文件上传6
    十四、文件上传-客户端表单实现三要素文件上传客户端表单需要满足:表单项type=“file”表单的提交方式是post表单的enctype属性是多部分表单形式,及enctype=“multipart/form-data”form.xml<%@pagecontentType="text/html;charset=UTF-8"language="java"%><html......
  • element ui的el-upload上传组件中使用el-image的图片预览
    问题想在elementui的el-upload上传组件中使用el-image的图片预览,这样就可以放大和缩小还有多张图片切换因为el-upload提供的是使用对话框查看图片,不能放大缩小还不能左右切换说明在el-image组件内的预览功能是使用的el-image-viewer这个小组件实现的,所以我们直接导入调用这......
  • SpringBoot上传图片到resource下
    推荐博客:https://blog.csdn.net/weixin_52065369/article/details/120412307这样上传到resource下的图片需要重启编译后才能访问,需要配置以下才能访问的到,通常不采用这样的方式https://blog.csdn.net/qq_41604890/article/details/114553632上传图片到本机......
  • ASP.NET Core MVC 从入门到精通之文件上传
    随着技术的发展,ASP.NETCoreMVC也推出了好长时间,经过不断的版本更新迭代,已经越来越完善,本系列文章主要讲解ASP.NETCoreMVC开发B/S系统过程中所涉及到的相关内容,适用于初学者,在校毕业生,或其他想从事ASP.NETCoreMVC系统开发的人员。经过前几篇文章的讲解,初步了解ASP.NETCore......
  • 开源单用户客服系统源码-上传附件功能-elementui 异步上传文件【唯一客服开发商】
    之前开源的单用户客服系统,上传附件成功后,还不能展示出文件形式,今天把上传展示出文件形式给开发完善一下。我想要实现的效果是,展示出文件的名称和大小信息后端返回一个带有文件信息的json结果,前端把该信息组织一下并解析成可以展示的样子后端golang部分代码funcUploadFile(c......
  • 如何通过appuploader把ipa文件上传到App Store教程步骤​
    如何通过appuploader把ipa文件上传到AppStore教程步骤​iOSAPP上架AppStore其中一个步骤就是要把ipa文件上传到AppStore!​下面进行步骤介绍!​利用Appuploader这个软件,可以在Windows、Linux或Mac系统中申请ios和上传IPA到AppStoreConnect。​非常的方便,没有Mac也......