Elasticsearch Hot Threads API与集群扩展策略解析
1. Hot Threads API使用说明
Hot Threads API与其他Elasticsearch API不同,它返回的是格式化文本而非JSON。下面详细介绍其响应生成逻辑:
1.信息收集:Elasticsearch收集所有运行线程的信息,如每个线程的CPU使用时间、线程被阻塞或处于等待状态的次数和时长等。
2.间隔等待:等待由interval参数指定的时间后,再次收集相同信息。
3.线程排序:根据每个线程的运行时间对线程进行降序排序,运行时间最长的线程排在列表顶部。这里的时间是针对type参数指定的操作类型进行测量的。
4.线程分析:Elasticsearch分析前N个线程(N由threads参数指定),每隔几毫秒对这些线程的堆栈跟踪进行几次快照(快照数量由snapshot参数指定)。
5.堆栈跟踪分组:对堆栈跟踪进行分组,以可视化线程状态的变化,并将响应返回给调用者。
2. Hot Threads API响应结构
Hot Threads API的响应包含多个部分,下面详细介绍:
1.节点信息