在某次项目的开发过程中,因为是接手的项目,所以下意思认为参数的配置是比较合理的,基本上除非涉及到地址等变更内容外,没有关注其他参数。当项目提测时,测试告诉我说整个系统并发到10基本就会被压垮,让我去检查下接口的设置。
我去系统上下载了日志,查看了堆栈内容,发现并没有明显的任何拖延时间的处理程序,整个内容获取的数据也在合理的范围内,但是一旦并发数上去了,就又会被压垮。当时因为其他问题比较紧急,就抓紧处理其他问题了。
在最后当我们处理完其他问题时,再回头来处理并发问题时,和同事一起检查参数设置的时候,才发现对于max-http-header-size被设置为了100M,也就是说每个请求都会打开100M的post,导致一到并发数上去,就会急剧激增内存,我不知道当时为啥设置这么多,估计是自己写的时候顺手写的一个数字,这提醒了我,如果是接受一个项目,还是要认真检查参数的配置,不然什么时候可能会坑到你自己。