elasticsearch出现查询慢如何排查问题
匿名 | 发布于2017年12月22日 | 阅读数:16152
这两天线上的es服务调用es集群出现了好几次查询慢的记录,我在日志中记录了es查询返回的took还有方法执行耗时,发现took中竟然有返回30多秒的。。。 不用说rpc客户端肯定也超时了。
但是当我把执行慢的语句拿到es里面运行,仅仅几毫秒就返回了。而且我去es的慢查询日志也没有找到那些好几秒甚至十几秒的查询。
出现查询慢的那段时间是早上7点前后,系统qps不高 (单台机器20/s以下)。不过服务出现了几次老年代GC,es集群没有出现。
这种现象如何排查呢?
但是当我把执行慢的语句拿到es里面运行,仅仅几毫秒就返回了。而且我去es的慢查询日志也没有找到那些好几秒甚至十几秒的查询。
出现查询慢的那段时间是早上7点前后,系统qps不高 (单台机器20/s以下)。不过服务出现了几次老年代GC,es集群没有出现。
这种现象如何排查呢?
1 个回复
kennywu76 - Wood
赞同来自: ELKer 、code4j
所以排查一下慢查询时间点,服务器的CPU, load average消耗情况,是否有资源消耗高峰,另外查询线程池的队列大小也有必要做监控。