[ASP.NET]大文件无法上传排查经验分享
最近我们标桥下载模块,在经过正常更新后,发现软件包无法上传。
临时解决方案
因为问题结点在于文件无法上传到服务器,所以我们临时手动将文件丢到服务器,通过测试服务器将数据造出来,然后再更新到正式数据库,最后通过接口将文件同步到镜像站,保证平台上的软件能被正常更新使用。
首先排查代码问题
本次更新没有涉及到上传代码改造,与svn历史版本对比后也没有发现改动。并在测试服务器上可以正常上传。Ps:我们平台现在都是jenkins+docker部署,正式系统与测试系统环境与配置都是一致的。为确保正式与测试配置文件一致,我又核对了一遍。
其次可能是网速问题
之前出现过因网速问题导致无法上传的。因正式上传文件比较大,大概有100M样子,我又拿了个几兆大小的文件上传,可以上传上去。与基础设施联系后,了解到因cdn回源,公司带宽基本都被占用,网速极其的卡,并且了解到上传人员上传时,进度的确十分的慢。还有一个问题是基础设施的同事查到服务存放文件的磁盘满了。Ps:当时内心十分喜悦,问题找到了。哈哈哈哈哈哈哈哈哈哈!当即通知上传人员,现在因网速和磁盘问题导致无法上传,等这两个问题处理好再上传。
第二天,网络带宽下来了,磁盘问题解决了,通知上传人员上传,可他们告诉我还是不能上传,当时就心碎了。心里默默地问自己,还有什么问题呢,查看日志又没有报错,但就是不能上传。
http切成https问题
求助我部门领导庞经理后,他给我提出几个可能的问题:
1. 我们平台最近在进行将http改成https的改造,是不是可能因为这个而导致的。
2. 我们平台将七牛cnd加速改成了腾讯云cdn加速,是不是可能因为cdn配置导致的。
根据我们经理提出的排查方向 ,我们首先切成内网登录平台,内网如果可以上传,说明tomcat服务器没有问题,问题应该出在外网切换。通过测试,内网上传没有问题,tomcat问题排除。后咨询基础设施部问https上传是否有问题,答复是没有问题。
CDN加速问题
那最后问题只有可能在腾讯云的cdn加速上。打电话给腾讯云客服,得到的答案是cdn加速会对大文件上传做限制,因为我们配置的接口访问地址是主站域名,所以将主站cdn加速关闭,就可以了。
总结:遇到无头问题,大胆假设,小心验证,总能找到问题。与诸君共勉!!
- 文件批量上传组件分享(C# asp.net Ajax)上传图片
- asp.net+ajaxfileupload.js 实现文件异步上传代码分享
- ASP.NET上传大文件出现网页无法显示的问题
- asp.net mvc下使用xheditor上传文件无法保存的解决方案
- ASP.NET 2.0 多文件上传小经验
- asp.net文件上传示例分享
- 脑残的asp.net mvc ajax.beginform()无法上传文件
- ASP.NET上传大文件出现网页无法显示的问题
- ASP.NET,FileUpload无法上传大文件的解决办法
- asp.net html控件的File控件实现多文件上传实例分享
- 【转】ASP.NET上传大文件出现网页无法显示的问题
- 解决Godaddy主机asp.net无法上传文件的问题
- ASP.NET上传大文件出现网页无法显示的问题
- 分享asp.net 网站部署一段时候后无法响应经验
- IE7,IE8,上传文件控件input file和asp.net FileUpload控件无法获取完整路径的解决办法
- 去年做公司的一个项目写了个ASP.NET多文件上传,现在单独拿出来分享
- ASP.NET 2.0 多文件上传小经验(转)
- asp.net mvc ajax.beginform()无法上传文件
- ASP.NET上传大文件出现网页无法显示的问题
- 收藏:ASP.NET 2.0 多文件上传小经验