Elasticsearch文档定义了搜索池:
对于计数/搜索操作,默认为固定,大小为3x#可用 处理器。 queue_size 1000。
因此,如果我有一个带有8个核心CPU的节点,那么它一次可以调整24个搜索操作。这是固定值。
但我不明白“queue_size 1000”是什么意思。它如何影响搜索操作?
答案 0 :(得分:1)
queue_size
允许控制没有线程执行它们的待处理请求队列的大小。默认情况下,它设置为-1,这意味着它是无界的。当请求进入并且队列已满时,它将中止请求。
将其设置为1000意味着您可以有1000个等待处理的待处理请求。
答案 1 :(得分:1)
正确的number of search/count pools是((# of available_processors * 3) / 2) + 1
,因此在您的情况下,这意味着((8 * 3)/ 2)+ 1 = 13个线程池来处理搜索和计数请求。
queue_size
表示如果没有线程可以处理它们,您可以在任何给定时间堆叠多达1000个待处理请求。