一次网站登录慢故障排查

    昨天上午到公司,研发发邮件通知说有用户反映登录我们A站速度很慢,登录进去之后的操作都是正常的,所以基本可以排除网络与服务器压力大的因素。

   那么接下来就是看看数据库与缓存是否成为瓶颈,结果没有什么发现,毕竟A站是已经边缘化的产品,平日都没人去维护。

    登录缓慢无非就是几个原因:数据库瓶颈、缓存问题、程序代码问题、并发量大应用服务器负载过高,调用第三方接口。

    其他几个原因可以直接排出,那么就只剩下程序代码问题与调用第三方接口这俩可疑了,为了排除前者的嫌疑,我把在测试服务器上另外部署了一套环境,把代码回滚到N月前的版本,但是问题依旧。那么就只剩下一个原因了:A站登录时调用了第三方接口。可A站很久无人维护,并且原来的开发人员已经离职,具体有调用哪些外部接口谁也不清楚。

    无奈,只好自己登录服务器进行抓包,尝试分析数据包中是否包含调用其他url,结果url没发现,却意外看到有问题的连接:

从上图可知,发送给114.112.81.104的连接没有返回数据,在服务器上看到A站本地服务器也只是发送数据到此地址,但没有回应:

由此断定,A站登录时调用114.112.81.104的80端口(从内部记录,可以根据此ip查到对应的url)。后来查到此url已经失效,无法访问,所以登录的时候调用失效的url就会等到超时才继续进行下一步,这就是登录速度慢的真正原因。

本文出自 “赵海华_运维之路” 博客,请务必保留此出处http://baiying.blog.51cto.com/1068039/1545096

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。