上周主要处理了,两个生产问题。工作电脑没带,主要简述一下。
- 每天的20:13分linux服务器(centos7.4)重新启动
- 应用服务接口类交易过慢,耗时20秒,不频繁,但时有发生,引发通信超时现象
这里描述第二个问题,
问题现象
接到客户反馈系统应用报错网络通信超时,并且交易过慢,影响客户使用。
排查过程:
- 排查weblogic中间件server日志,发现部分线程挂起
- 排查应用日志,发现接口类交易固定耗时20S秒左右
- 抓取网络日志分析,发现链接建立完毕后,开始发送数据时,对方主动关闭了链接,但应用却在20秒后接收到了对方系统的返回数据,因此怀疑请求的发送到对方的接收请求处理以及返回都正常,但返回后本方应用未接收到数据,但对方却认为已经完成交易,因此发送关闭连接的执行
- 排查本方的网络变动,经过沟通发现上次上线时因为需要访问外网进行人脸识别的操作,因此临时配置DNS进行外网访问调整。
- DNS的主要作用是控制网络的进出口的,将域名解析为IP,同样也可以将IP反向解析未域名。因此DNS的调整是必然会对服务器的网络造成影响的。
- 同时进一步对应用日志进行排查,主要排查DNS改动前后的接口交易的耗时变化,通过日志的前后几天的比对,基本确定问题的发生就是因为DNS的改动引起的
- 因此发起变更,调整DNS的配置。
- 测试通过。
总结:
一般来讲我们不会将应用服务器开通对外网的访问,但当随着业务的发展必须要对外网进行访问的时候,我们可以通过代理的方式进行外网的访问,尽可能减少对应用服务器本身的改动,降低出错的可能性
PS:感谢几位同事的配合。