1、实验室环境出现接口慢查,超过1s
2、手动测试发现访问正常
3、查看机器的时间对应cpu\gc\网络正常
4、接口底层调用es,看接口本身耗时不大
5、时间被吃掉了,从进入接口到调用es接口的时间干了啥?
6、猜想,问题可以稳定浮现吗?
7、本地连续调用两次接口,记录用时,发现第一次耗时确实长,只是不稳定,但是肯定比第二次大一个量级。第二次在30ms以内,第一次在300ms,甚至出现一次用了1400ms
8、线上验证,查看最近一次发布后的用时。和猜想吻合。
9、和es组件负责同学沟通,确定 es接口第一次调用会初始化加载一些 docValue和fieldData信息
10、为什么实验室环境今天才暴露问题?因为实验室机器平时没有访问,所以第一次访问在这次业务方测试才触发上线后第一次调用。
11、为什么其他机器没有超时反馈?因为第一次耗时是长,但是是相对第二次来说的,第一次的长业务方接受范围内,所以没有反馈。