在实际网络环境中一般10mb左右的文件都需要借助于控件来实现。一方面是因为国内的网络环境不太稳定,另一方面是从服务器的负载方面考虑。
像qq邮箱中的超大附件上传功能,115网盘中的超大附件上传控件,华为网盘(dbank),金山快盘他们都是使用控件来实现超大文件上传功能的。
他们通过控件将一个大文件,比如1g划分成许多的小块,每一小块大约是128kb,然后循环上传,直到上传完。
服务器端每接受一小块,相当于接受到一个单独的文件,会直接写入硬盘里。最后,把接受的所有文件给组合起来。
这样做的优点就是减轻了服务端的压力,提高了服务端的负载能力,使得服务端能够处理的用户请求数多了。
jquery file upload 是一个jquery图片上传组件,支持多文件上传、取消、删除和断点续传,上传前缩略图预览、列表显示图片大小,支持上传进度条显示;支持各种动态语言开发的服务器端。