- Published on
一个关于客户程序网络问题定位的故事
- Authors

- Name
- Mao
问题描述
在假期前一周,客户反馈在他们准备测试Web服务的吞吐量性能指标,但是发现了一个问题,并怀疑是云厂商在处理过程中导致了问题,要求给一个分析报告。问题描述如下:
浏览器发起的http请求,HttpHeader中connection:keepalive,经过了云上的CDN, DDoS, WAF, LB, 虚拟网络, 容器网络等节点后,到达应用的web服务器;这时候 HttpHeader中connection变成了close。由于没有设置keepalive,从而导致导致web服务器出现了大量timewait,影响吞吐量。
问题分析
将客户问题的原始描述,稍微整理一下,得到数据流如下:
Browser -> CDN -> DDoS -> WAF -> LB -> PM -> VM(Port) -> Container(Port) -> App
问题现象是 从浏览器发起的 HTTP 请求中 Header 中的 Connection:keepalive ,到了App之后,Header的Connection值变为了close。
这是谁的问题?
客户提出问题之后,站在旁观者角度,这个问题是谁的问题?
- 客户的问题?是的,客户遇到问题了。
- 云服务商的问题?是的,客户对云服务商提出自证清白的要求。
这是个什么问题?
将客户问题的原始描述,稍微整理一下,得到数据流