了解Elasticsearch的搜索线程池

背景:

我正在使用Datadog与elasticsearch集成来监视ES群集,它在其仪表板上显示的一项重要指标是活动线程和等待搜索线程的数量。参考this ES文档,我了解搜索线程在ES的请求队列中工作,该请求队列的大小固定为1000。

问题

我看到很多等待线程,如图所示,但是没有here解释的拒绝队列异常。因此,这意味着ES不会拒绝请求,但搜索线程仍无法足够快地执行请求,因此长时间处于等待状态。

问题

  1. 搜索请求队列如何正常工作,是否有新请求进入新队列并被线程选择后立即删除?
  2. 我知道ES拒绝该请求肯定是ES处于压力之下,但是有什么方法可以在Datadog仪表板中显示该指标,如果不是,我找不到Datadog site中提到的相关指标有任何API可以显示这些信息的历史记录。
  3. 即使在高峰时间%,我们的ES群集CPU使用率也低于45 ,但是,我们仍然看到大量等待搜索线程,因此我们的ES配置是否有可能没有优化?如果是的话,有什么方法可以改善它。

我知道这是一个董事会问题,因此请告知是否需要其他信息。

了解Elasticsearch的搜索线程池

huozong 回答:了解Elasticsearch的搜索线程池

平均 CPU 使用率可能无法提供更好的视图。检查最大 CPU 利用率是否接近 100%。如果是这样,您可能需要在 ES 端进行优化。

本文链接:https://www.f2er.com/3008327.html

大家都在问