最近我们标桥下载模块,在经过正常更新后,发现软件包无法上传。

临时解决方案

因为问题结点在于文件无法上传到服务器,所以我们临时手动将文件丢到服务器,通过测试服务器将数据造出来,然后再更新到正式数据库,最后通过接口将文件同步到镜像站,保证平台上的软件能被正常更新使用。

首先排查代码问题

本次更新没有涉及到上传代码改造,与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]大文件无法上传排查经验分享的更多相关文章

  1. asp.net大文件分块上传断点续传demo

    IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头. 一. 两个必要响应头Accept-Ranges.ETag 客户端每次提交下载请求时,服务 ...

  2. ASP.NET大文件断点上传

    HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...

  3. ASP.NET大文件分片上传

    文件夹数据库处理逻辑 public class DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject() ...

  4. js大文件分块上传断点续传demo

    文件夹上传:从前端到后端 文件上传是 Web 开发肯定会碰到的问题,而文件夹上传则更加难缠.网上关于文件夹上传的资料多集中在前端,缺少对于后端的关注,然后讲某个后端框架文件上传的文章又不会涉及文件夹. ...

  5. 使用webuploader组件实现大文件分片上传,断点续传

    本人在2010年时使用swfupload为核心进行文件的批量上传的解决方案.见文章:WEB版一次选择多个文件进行批量上传(swfupload)的解决方案. 本人在2013年时使用plupload为核心 ...

  6. PHP实现大文件的上传设置

    打开php.ini,首先找到 ;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; 区域,有影响文件上传的以下几个参数: file_uploads = ...

  7. Webuploader 大文件分片上传

    百度Webuploader 大文件分片上传(.net接收)   前阵子要做个大文件上传的功能,找来找去发现Webuploader还不错,关于她的介绍我就不再赘述. 动手前,在园子里找到了一篇不错的分片 ...

  8. java springboot 大文件分片上传处理

    参考自:https://blog.csdn.net/u014150463/article/details/74044467 这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时 ...

  9. PHP + JS 实现大文件分割上传

    服务器上传文件会有一定的限制.避免内存消耗过大影响性能,在 php.ini 配置文件中,有几个影响参数: upload_max_filesize = 2M //PHP最大能接受的文件大小 post_m ...

随机推荐

  1. 创建第一个Maven项目

    -----------------------siwuxie095                                     创建第一个 Maven 项目         1.打开 Ec ...

  2. 控制span的width属性及display属性值的选择

    给span设置width样式,会发现并没有改变它的宽度,但有时候我们需要给它设置固定的宽度,那么就可以设置它的display样式,改变span的显示模式就好了. span默认显示模式是inline,无 ...

  3. springboot自定义消息转换器HttpMessageConverter

    在SpringMVC中,可以使用@RequestBody和@ResponseBody两个注解,分别完成请求报文到对象和对象到响应报文的转换,底层这种灵活的消息转换机制就是利用HttpMessageCo ...

  4. swift - 封装 GCDTimer 和 NSTimer

    封装的类代码 import UIKit /// 控制定时器的类 class ZDTimerTool: NSObject { /// 定时器 // private var timer: Timer? / ...

  5. SourceTree下载 及使用

    SourceTree 代码库管理工具 https://www.cnblogs.com/QianChia/p/8531725.html#_label0 SourceTree的基本使用 https://w ...

  6. css之颜色篇

      app多采用浅灰#f5f5f5   白色一般用white,如果觉得白太直接了,可以加一点点灰,#fefefe,   这种情况下搭配#e4e4e4的浅灰边框最合适.

  7. db2中如何获取当前日期前一周的日期

    SELECT CURRENT_DATE - (DAYOFWEEK(CURRENT_DATE) - 2 + (ROW_NUMBER() OVER (ORDER BY 1) ) ) DAY AS resu ...

  8. oracle 用一个表的一个字段更新另一个表的一个字段

    案列: 想更新A表的name字段,由于失误,在写这个表的时候,这个字段没有写,发现的时候,已经写了一个多月的数据了.改了之后的过程,会正常的写这个字段, 可是已经写了的数据也不能铲了,重新计算. 好在 ...

  9. 【Unity】1.3 Unity3D游戏开发学习路线

    分类:Unity.C#.VS2015 创建日期:2016-03-23 一.基本思路 第1步--了解编辑器 首先了解unity3d的菜单,视图界面.这些是最基本的基础,可以像学word操作一样,大致能明 ...

  10. IntelliJ IDEA 2017版 spring-boot 实现jpa基本部署,通过实体类自动建立数据库

    一.添加Spring Boot JPA-Hibernate步骤 1.在pom.xml添加mysql,spring-data-jpa依赖      2.在application.properties文件 ...