[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 ...
随机推荐
- sobel 使用说明
转自http://www.cnblogs.com/justany/archive/2012/11/23/2782660.html OpenCV 2.4+ C++ 边缘梯度计算 2012-11-23 0 ...
- EF6.0新特性-DbCommandInterceptor实现非SQL端读写分离
前几天看了一个基于sqlserver的负载均衡与读写分离的软件Moebius,实现的方式还是不错的,这使得用sqlserver数据库的同学时有机会对数据库进行更有效的优化了
- DOMNodeInserted监听div内容改变
$('.cw-icon .ci-count').on('DOMNodeInserted',function(){ $(".settleup-content .cont_loading&quo ...
- Unsupported major.minor version 49.0的错误解决
Unsupported major.minor version 49.0的错误解决 Posted on 2011-01-14 16:49 chinaifne 阅读(15840) 评论(0) 编辑 收 ...
- Bug:src/lxml/lxml.etree.c:84:20: 致命错误:Python.h:没有那个文件或目录
问题描述: pip批量安装软件包时,出现如上题目错误,卡在了lxm依赖于python中的python-devel 问题原因: 缺失python-devel开发包所导致,python.h存在于pytho ...
- hive的用户和用户权限
HiverServer2支持远程多客户端的并发和认证,支持通过JDBC.Beeline等连接操作.hive默认的Derby数据库,由于是内嵌的文件数据库,只支持一个用户的操作访问,支持多用户需用mys ...
- 孤立森林(isolation forest)
1.简介 孤立森林(Isolation Forest)是另外一种高效的异常检测算法,它和随机森林类似,但每次选择划分属性和划分点(值)时都是随机的,而不是根据信息增益或者基尼指数来选择. 在建树过程中 ...
- const stirng* 类型的指针cp,当cout<<*cp<<endl:会提示没有与之匹配的“<<”运算符
#include<iostream> #include<cstring> #include<cstdio> #include<cstdlib> usin ...
- PythonWEB框架之Flask--2
10.请求扩展 1 before_request 类比django中间件中的process_request,在青丘收到之前绑定一个函数做一些事情 #基于它做用户登录认证 @app.before_req ...
- python之数据类型1
什么是数据类型及数据类型分类 python中的数据类型 python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是在初始化生成一个对象,即所有数据都是对 ...