ElasticSearch之线程池

news/2024/7/7 5:59:28 标签: elasticsearch, linux

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

node.processors: 2

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

线程池的列表

线程池名称类型线程数量队列长度用途
genericscaling一般用途。
searchfixed(processors * 3) / 2 + 11000count/search
search_workerfixed(processors * 3) / 2 + 1unboundedcount/search
search_throttledfixed1100count/search/suggest/get
search_coordinationfixedprocessors / 21000search-related
getfixed(processors * 3) / 2 + 11000get
analyzefixed116analyze
writefixedprocessors10000index/delete/update, ingest processors, and bulk requests
snapshotscalingmin(5, (processors) / 2)snapshot/restore
snapshot_metascalingmin(50, (processors* 3))snapshot repository metadata read
warmerscalingmin(5, processors / 2)segment warm-up
refreshscalingmin(10, processors / 2)refresh
fetch_shard_startedscaling2 * processorslisting shard states
fetch_shard_storescaling2 * processorslisting shard stores
flushscalingmin(5, processors / 2)flush/translog
force_mergefixedmax(1, processors / 8)unboundedforce merge
managementscaling5cluster management
system_readfixedmin(5, processors / 2)read
system_writefixedmin(5, processors / 2)write
system_critical_readfixedmin(5, processors / 2)read
system_critical_writefixedmin(5, processors / 2)write
watcherfixedmin(5 * processors, 50)1000watch 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

相关资料

  • Thread pools
  • Watcher
  • Flush API
  • Translog
  • Force merge API

http://www.niftyadmin.cn/n/5249406.html

相关文章

梳理一下嵌入式和单片机之间的关系

一定有很多人都听说过嵌入式和单片机,但在刚开始接触时,不知道大家有没有听说过嵌入式就是单片机这样的说法,其实嵌入式和单片机还是有区别的。单片机与嵌入式到底有什么关系? 下面我们就来说说嵌入式和单片机之间的联系和区别吧…

nodejs+vue+微信小程序+python+PHP的游戏测评网站设计与实现-计算机毕业设计推荐

通过软件的需求分析已经获得了系统的基本功能需求,根据需求,将游戏测评网站功能模块主要分为管理员模块。管理员添加个人中心、管理员管理、基础数据管理、公告管理、用户管理、游戏管理、游戏测评管理、游戏攻略管理、轮播图信息等操作。  随着时代的…

.Net6.0 Microsoft.AspNetCore.Http.Abstractions 2.20 已弃用

您想要升级 Microsoft.AspNetCore.Http.Abstractions 包,您需要注意以下几点: Microsoft.AspNetCore.Http.Abstractions 包在 ASP.NET Core 2.2 版本后已经被标记为过时,因为它已经被包含在 Microsoft.AspNetCore.App 框架引用中12。因此&am…

微信小程序 - 格式化操作 moment.js格式化常用使用方法总结大全

格式化操作使用 1. 首先,下载一个第三方库 moment npm i moment --save 注:在微信小程序中无法直接npm 下载 导入 的(安装一个就需要构建一次) 解决:菜单栏 --> 工具 --> 构建 npm 点击即可(会…

【Linux下基本指令 —— 2】

Linux下基本指令 —— 2 十.more 指令语法:功能:常用选项:举例:Xshell7展示十一.less 指令语法:功能:选项:Xshell7展示 十二.head 指令语法:功能:选项:Xshell…

嵌入式杂记 - MDK的Code, RO-data , RW-data, ZI-data意思

嵌入式杂记 - Keil的Code, RO-data , RW-data, ZI-data意思 MDK中的数据分类MCU中的内部存储分布MDK中数据类型存储Code代码段例子 RO-data 只读数据段例子 RW-data 可读写数据段例子 ZI-data 清零数据段例子 在嵌入式开发中,我们经常都会使用一些IDE,例…

使用cpolar内网穿透实现内网SeaFile私有云盘的公网访问

文章目录 1. 前言2. SeaFile云盘设置2.1 Owncould的安装环境设置2.2 SeaFile下载安装2.3 SeaFile的配置 3. cpolar内网穿透3.1 Cpolar下载安装3.2 Cpolar的注册3.3 Cpolar云端设置3.4 Cpolar本地设置 4.公网访问测试5.结语 1. 前言 现在我们身边的只能设备越来越多&#xff0c…

ELK技术栈介绍及简单使用实例

1. ELK技术栈介绍 引言 在当今数据驱动的世界里,有效地管理和分析大量日志数据变得至关重要。这里我们将深入探讨ELK技术栈,这是一种流行的日志管理解决方案,它结合了三个开源项目:Elasticsearch、Logstash和Kibana。ELK技术栈因…