今天发布一套新系统,发现一个非常逗逼的问题。
我在服务器A部署了一套nodejs站点,在服务器B部署了一套.net开发的服务。
A系统是linux,B 是windows。一对儿冤家。
A调用了B上形形色色的服务。
大体完好,除了一个逗逼服务,只能偶尔正常,其他时候都是逗逼。于是在B上抓包分析.
有发现.见图
我发现客户端在http请求回传完数据之前发出了FIN+ACK请求。
但是nodejs默认的超时时间是2分钟,而发出FIN+ACK时时间明显不到两分钟
找了一天了,问题还是没有解决办法。请园子里的诸位大神搭救一二 ,指点一下迷津。不胜感激。在线等啊。死等 。
对了,A,B是在局域网内,
我在局域网内的C(Windows)部署nodejs就不会有问题,在我本机调用这个服务也不会有问题。
前面那个507是什么?
超时是在服务端设置的,你那FIN是客户端发起的,应该跟超时时间没关系,还有c端post之后有没有close之类的操作。
鉴于你都是在win端没问题,有没有常识重新部署一台linux? 冤家哈哈
是不是Keep-Alive的问题,可以看看请求头、响应头