互联网开发-web文件上传性能问题
来源:互联网 发布:如何设置域名重定向 编辑:程序博客网 时间:2024/05/23 13:37
1. 问题描述
2. 问题分析
在网上搜索“测速网”测试了一下公司外网的带宽情况:
上传带宽 = 1.04 Mbps = 133.2 kb/s
下载带宽 = 1.25 Mbps = 160 kb/s
单位换算:
1 Mbps(带宽速率)= 128 kb/s
1M = 1024 kb
为什么公司内网环境的上传那么快呢?由于对网络不是很了解,我特意问了一下公司的网络管理员辉哥,我们公司办理的企业级100M光纤带宽。所以在公司的局域内网环境下,上传速率和下载速率都是100Mbps。因为是光纤,所以上传速率和下载速率是对等的,都是100Mbps。所以在内网环境的上传,是很快的。我们来算一下内网的上传:
5M的上传文件,大小 = 5 * 1024 = 5120 KB;
100Mbps = 100 * 128 KB/S
上传用时 = 5120/12800 = 0.4S
为什么在外网上传就特别慢呢?因为公司对员工访问外网做了带宽限制,大概1-2Mbps的带宽;
按照3Mbps的带宽我们来算一下公司的外网上传:
5M上传文件, 大小 = 5*1024 = 5120 KB
公司外网上传带宽 = 2 Mbps = 2* 128 KB/S = 256 KB/s
上传用时 = 5120/256 = 20s
由于上传带宽是300多号员工共享的,实际上传带宽会低于2 Mbps,所以导致外网环境的上传大概30s左右。
3. 带宽知识普及
通常我们在运营商办理的带宽种类有如下集几种:
从列表可见,我们【使用时的真实速率】通常达不到运营商支持的【最高速率】。
运营商所谓的【最高速率】通常指我们使用的【下载速率】。为什么没有【上传速率】呢?
(1)上传带宽不一定等于下载带宽。
- 宽带是ADSL接入(电话线接入)的话,由于ADSL使用的技术是一种不对称数字用户线,所以ADSL是不对等带宽,通常上传速度只有下载速度的1/8左右,可以说是国际标准了。
- 光纤接入带宽的话,技术上是利用两条光纤分别负责上行和下行。所以原则上,上传下载速度是对等的。实际上呢,光纤用户依然被宽带运营商限制了上行带宽,即使是光纤入户的百兆带宽,上传带宽也不足4M。
(2)为什么宽带运营商要限制家庭用户的上行宽带
主要原因可能就是为了省钱,毕竟公司都是以利益为主嘛。网民长期以来的网络使用习惯,使他们已经习惯了上行带宽慢,而且也没有用户死气白咧的要求提高上行带宽。如果宽带运营商给予上下行相同的速度,会造成资源浪费。但如果把上行带宽资源销售给机房的企业专线租用客户,则会获得更多的利益。托管在机房的服务器需要大量上行带宽,并不需要太多下行带宽。而且带宽价格非常昂贵,往往机房10M上行专线租用的费用就是家庭100M费用的5、6倍。由此看来,运营商很可能把亏欠我们的上行带宽拿去高价卖给企业机房了,你大爷!
4. 总结
综上所述,国内的上行带宽(光纤接入)最大值4Mbps,然而通常也就 2Mbps 左右的上行带宽。
所以互联网上传文件,很慢的。不要再盲目的改你的代码了,没用的。
参考链接:
http://blog.csdn.net/longxingzhiwen/article/details/54015223
http://digi.tech.qq.com/a/20160311/029373.htm
- 互联网开发-web文件上传性能问题
- 互联网开发--web文件上传原理
- Web开发中的文件上传问题研究
- Web开发--上传文件
- eclipse下的web开发问题总结[struts2文件上传]
- WEB开发文件上传存储,虚拟路径配置问题。
- web开发中的文件上传
- web应用开发-文件上传
- Java web 开发 文件上传讲解
- Web开发之文件的上传
- 移动Web开发之HTML5文件上传
- Tornado web开发之简单文件上传
- Spring Boot Web应用开发 文件上传
- web方式上传文件的问题
- Common FileUpload远程web文件上传问题
- 文件上传问题,设置web.config
- 对于web开发怎么定位性能问题
- WEB 开发技术系列之二--文件上传
- ueditor 遇到的错误
- 网络套接字socket编程之UDP
- PAT (Advanced Level) Practise 1064 Complete Binary Search Tree (30)
- 2017ccpc全国邀请赛(湖南湘潭) H. Highway XTOJ 1267 【树的直径】
- Best Paper Awards in Computer Science (since 1996)
- 互联网开发-web文件上传性能问题
- 分针网——每日分享:Vue 指令总结
- nodejs 类型判断 工具包 util.is***
- Liferay 7 CE: How to add support for Oracle DB
- C++ define、typdef和const
- asp.net Mvc3 之 Html.BeginForm
- 重启yarn服务报错no ResourceManager to stop
- Webstorm常用快捷键
- scala插值器