问题
同事反应生产环境系统一次删除操作每次都执行失败。导致功能不能使用。
如何排查解决
- 查看生产环境相应的日志 ,A服务调用B服务,B服务调用C服务;
- 查看A服务的日志,A服务中调用B服务接口 返回报错read timed out 表现出来是请求超时;
- 查看B服务的日志 B服务调用C服务接口 返回报错read timed out 表现出来是请求超时 ;
- 查看C服务的日志 Could not found global transaction xid = %s, may be has finished. 找不到全局事务XID。查看C服务接口中的业务逻辑,并进行耗时测试。发现C接口中执行了9s才结束,fegin服务调用超时时间设置10s;
总结
至此问题已排查出来,C服务业务逻辑执行过长导致超出10s,各自全局事务回滚。