Nodes hot_threads,根据官方描述_nodes/hot_threads
获取集群中每个节点当前热线程,我执行后的返回的结果信息很长,那么该怎么解读呢?
很容易推理出,hot_threads在哪里,那么哪里就是性能优化的地方。
185上面并没有热的线程与下图top监控的指标是吻合的。
::: {bwhs185}{0l0BABnLTfKt4NBEI8uuUA}{V0Ycx2FaS_OUM9Z9jbCLMg}{10.101.3.185}{10.101.3.185:9300}{ml.max_open_jobs=10, ml.enabled=true}
Hot threads at 2019-04-19T01:52:34.843Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true:
从下面的快照,可以看到3个get线程占用了资源,但是这个指标能解决什么问题,暂无头绪。
::: {bwhs184}{0CnTTaSaRt-X5m5hj-Oqdw}{OjqrxRmCQfKIjwOHA-Mheg}{10.101.3.184}{10.101.3.184:9300}{ml.max_open_jobs=10, ml.enabled=true}
Hot threads at 2019-04-19T02:01:14.806Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true:
16.4% (81.7ms out of 500ms) cpu usage by thread 'elasticsearch[bwhs184][get][T#4]'
8/10 snapshots sharing following 2 elements
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
16.0% (80ms out of 500ms) cpu usage by thread 'elasticsearch[bwhs184][get][T#3]'
5/10 snapshots sharing following 2 elements
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
10.0% (50ms out of 500ms) cpu usage by thread 'elasticsearch[bwhs184][get][T#1]'
4/10 snapshots sharing following 2 elements
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)