首页 > 其他分享 >ElasticSearch之线程池

ElasticSearch之线程池

时间:2023-11-28 22:36:37浏览次数:36  
标签:search processors min scaling ElasticSearch 线程 fixed

ElasticSearch节点可用的CPU核的数量,通常可以交给ElasticSearch来自行检测和判定,另外可以在``elasticsearch.yml`中显式指定。样例如下:

node.processors: 2

如下表格中的processors即CPU核的数量。

线程池的列表

线程池名称 类型 线程数量 队列长度 用途
generic scaling 一般用途。
search fixed (processors * 3) / 2 + 1 1000 count/search
search_worker fixed (processors * 3) / 2 + 1 unbounded count/search
search_throttled fixed 1 100 count/search/suggest/get
search_coordination fixed processors / 2 1000 search-related
get fixed (processors * 3) / 2 + 1 1000 get
analyze fixed 1 16 analyze
write fixed processors 10000 index/delete/update, ingest processors, and bulk requests
snapshot scaling min(5, (processors) / 2) snapshot/restore
snapshot_meta scaling min(50, (processors* 3)) snapshot repository metadata read
warmer scaling min(5, processors / 2) segment warm-up
refresh scaling min(10, processors / 2) refresh
fetch_shard_started scaling 2 * processors listing shard states
fetch_shard_store scaling 2 * processors listing shard stores
flush scaling min(5, processors / 2) flush/translog
force_merge fixed max(1, processors / 8) unbounded force merge
management scaling 5 cluster management
system_read fixed min(5, processors / 2) read
system_write fixed min(5, processors / 2) write
system_critical_read fixed min(5, processors / 2) read
system_critical_write fixed min(5, processors / 2) write
watcher fixed min(5 * processors, 50) 1000 watch executions

依据上述表格中的线程数量的规则,通过指定node.processors,可以推断出ElasticSearch各线程池中线程的数量。

线程池的类型

fixed
线程池中的线程数量固定,同时使用队列来缓存当前暂时无法处理的请求。
通过参数size指定线程池中线程的数量。
通过参数queue_size指定请求队列的长度,默认值为-1,表示unbounded,即为无界队列。

配置样例,如下:

thread_pool:
    write:
        size: 30
        queue_size: 1000

scaling
线程池中的线程数量依据一定的规则动态调整。
通过参数coremax,以及工作负载情况来判定线程的生命周期和数量。
通过参数keep_alive来决定空载情况下,线程的存活时长。
配置样例,如下:

thread_pool:
    warmer:
        core: 1
        max: 8
        keep_alive: 2m

相关资料

标签:search,processors,min,scaling,ElasticSearch,线程,fixed
From: https://www.cnblogs.com/jackieathome/p/17863282.html

相关文章

  • ElasticSearch之cat nodes API
    命令样例如下:curl-XGET"https://localhost:9200/_cat/nodes?v=true&pretty"--cacert$ES_HOME/config/certs/http_ca.crt-u"elastic:ohCxPH=QBE+s5=*lo7F9"执行结果输出如下:ipheap.percentram.percentcpuload_1mload_5mload_15mnode.role......
  • ElasticSearch之cat nodeattrs API
    命令样例如下:curl-XGET"https://localhost:9200/_cat/nodeattrs?v=true&pretty"--cacert$ES_HOME/config/certs/http_ca.crt-u"elastic:ohCxPH=QBE+s5=*lo7F9"执行结果输出如下:nodehostipattrvalu......
  • ElasticSearch之cat master API
    命令样例如下:curl-XGET"https://localhost:9200/_cat/master?v=true&pretty"--cacert$ES_HOME/config/certs/http_ca.crt-u"elastic:ohCxPH=QBE+s5=*lo7F9"执行结果输出如下:idhostipnodeaKgBu7LgS9a6iPYH8n2JPw1......
  • ElasticSearch之cat indices API
    命令样例如下:curl-XGET"https://localhost:9200/_cat/indices?v=true&pretty"--cacert$ES_HOME/config/certs/http_ca.crt-u"elastic:ohCxPH=QBE+s5=*lo7F9"执行结果输出如下:healthstatusindexuuidprirepdocs.coun......
  • py02-python之线程
    1、线程:(1)讲程是分配资源的最小单位,一旦创建一个进程就会分配一定的资源,就像两个人聊OQ就需要打开两个QQ软件一样,是比较浪费资源的。线程是程序执行的最小单位,实际上进程只负责分配资源,而利用这些资源执行程序的是线程,也就说进程是线程的容器,一个进程中最少有一个线程来负责执行......
  • Java多线程转账
    Java多线程转账关键词:多线程,Java以前的一道面试题,要求是使用Java多线程,实现一个转账业务。不考虑数据库,不考虑其他第三方系统。只考虑当前Java程序内各个账户进行转账,保证转账金额正确性和转账功能效率。想起那大约还是两年前,是线上面试,面试官给完题目就关闭视频通话,让我自己去......
  • Java核心知识体系7:线程安全性讨论
    Java核心知识体系1:泛型机制详解Java核心知识体系2:注解机制详解Java核心知识体系3:异常机制详解Java核心知识体系4:AOP原理和切面应用Java核心知识体系5:反射机制详解Java核心知识体系6:集合框架详解1为什么需要多线程我们都知道,CPU、内存、I/O设备的速度是有极大差异的,为了合......
  • Elasticsearch query查询语法 es
    Elasticsearch查询语法1.查询基本语法结构GET/{索引名}/_search{ "from":0,//返回搜索结果的开始位置 "size":10,//分页大小,一次返回多少数据 "_source":[...需要返回的字段数组...], "query":{...query子句...}, "aggs":{..aggs子句..},......
  • 多线程网络通信
    当多客户端同时连接和服务端持续监听时,涉及到多线程,每当有新的客户端连接时,就创建一个新的线程来处理与该客户端的通信,从而允许服务器端同时与多个客户端建立连接。直接贴代码:1//main.cpp2#include<QCoreApplication>3#include<iostream>4#include<QDebug>5#......
  • 进程和线程有哪些状态?
    进程的五种状态对于Linux系统而言,管理进程和线程使用的是相同的结构,所以进程和线程的状态是一样的,需要注意的是,这里说的是操作系统层面的线程,如果是java里面的线程,它的状态种类会有点不一样转载:https://www.nowcoder.com/discuss/556240605425246208https://mikechen.cc/2......