[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加速关闭,就可以了。
总结:遇到无头问题,大胆假设,小心验证,总能找到问题。与诸君共勉!!
[ASP.NET]大文件无法上传排查经验分享的更多相关文章
- asp.net大文件分块上传断点续传demo
IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头. 一. 两个必要响应头Accept-Ranges.ETag 客户端每次提交下载请求时,服务 ...
- ASP.NET大文件断点上传
HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...
- ASP.NET大文件分片上传
文件夹数据库处理逻辑 public class DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject() ...
- js大文件分块上传断点续传demo
文件夹上传:从前端到后端 文件上传是 Web 开发肯定会碰到的问题,而文件夹上传则更加难缠.网上关于文件夹上传的资料多集中在前端,缺少对于后端的关注,然后讲某个后端框架文件上传的文章又不会涉及文件夹. ...
- 使用webuploader组件实现大文件分片上传,断点续传
本人在2010年时使用swfupload为核心进行文件的批量上传的解决方案.见文章:WEB版一次选择多个文件进行批量上传(swfupload)的解决方案. 本人在2013年时使用plupload为核心 ...
- PHP实现大文件的上传设置
打开php.ini,首先找到 ;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; 区域,有影响文件上传的以下几个参数: file_uploads = ...
- Webuploader 大文件分片上传
百度Webuploader 大文件分片上传(.net接收) 前阵子要做个大文件上传的功能,找来找去发现Webuploader还不错,关于她的介绍我就不再赘述. 动手前,在园子里找到了一篇不错的分片 ...
- java springboot 大文件分片上传处理
参考自:https://blog.csdn.net/u014150463/article/details/74044467 这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时 ...
- PHP + JS 实现大文件分割上传
服务器上传文件会有一定的限制.避免内存消耗过大影响性能,在 php.ini 配置文件中,有几个影响参数: upload_max_filesize = 2M //PHP最大能接受的文件大小 post_m ...
随机推荐
- SVN概述
----------------------siwuxie095 SVN 概述 1.SVN 即 Subversion 的 ...
- win 下 nginx 与 php的配置
1.下载需要的软件包 php的windows版本(*注意这里下载非线程安全的,nginx使用的是cgi) http://windows.php.net/download/ nginx的window ...
- js回车、ESC、F2按钮事件
<script type="text/javascript" language=JavaScript charset="UTF-8"> docume ...
- JS如何获取PHP循环中的ID
JS如何获取PHP循环中的ID kaalrz 二路公交车 结帖率:83.33% 首先抱歉,因为昨天那帖图片几次都不能用,修改到不能再次修改,今天早上回帖又提示没有这个帖,只好重发一次. 如 ...
- 20172325 2017-2018-2 《Java程序设计》第六周学习总结
20172325 2017-2018-2 <Java程序设计>第六周学习总结 教材学习内容总结 1.利用[ ]建立一个数组,整列数据可以通过数组名引用,数组中的每个元素则可以通过其在数组中 ...
- makefile all
all:udps udpc udps:udpserv.c gcc -Wall -o udps udpserv.cudpc:udpclient.c gcc -Wall -o udpc udp ...
- asio 广播代码示例
代码网络收集 修改了一个编译的小问题 客户端 // Client.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include < ...
- C语言点滴
static修饰的变量和函数不可以在其他文件extern引用该变量或者函数. static变量放在静态内存区. static变量赋值只生效一次,再无法调用赋值语句.但是可以运算,例如++等. exte ...
- linux 硬盘分区攻略
以下的sdX代表硬盘分区(如sda1,sda2,sdb1...等等),如果已有的硬盘分区需要改变大小的话,请参考另一篇文章. /boot:开机用的磁盘空间了,至少78MB,一般给100MB就好了. / ...
- ubuntu系统中安装RoboMongo
1.下载RoboMongo RoboMongo官网下载链接.选择好相应版本. 2.解压文件 tar -xzf robomongo--linux-x86_64-.tar.gzcd robomongo-0 ...