Elasticsearch配置优化

以下的优化基础是安装的 Elasticsearch 版本为 7.17.7,同时jdk版本为 1.8.321

1、jvm参数优化

  这里说的jvm参数调优,是指elasticsearch安装目录下的jvm.options配置,如下图所示:
在这里插入图片描述

  这里调整的内容主要是调整垃圾回收的收集器,将默认的cms + parNew 垃圾回收器,替换为G1 垃圾回收器。好处是能够尽量缩短处理超大堆的停顿,在G1进行垃圾回收的时候完成内存压缩,降低内存碎片的生成。同时会尝试在满足高吞吐量需求的同时尽可能的缩短停顿时间。整个堆的操作,比如全局标记等,和应用线程并发执行。

注释原有的几个配置项,如下所示:

-XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=75
-XX:+UseCMSInitiatingOccupancyOnly

新增下述几个优化配置项:

##使用G1垃圾回收器
8:-XX:+UseG1GC
# full gc效率更高
8:-XX:+ExplicitGCInvokesConcurrent
8:-XX:+UseGCOverheadLimit
# 启动并发GC周期时的堆内存占用百分比.
8:-XX:InitiatingHeapOccupancyPercent=40# 指定STW工作线程的数量:计算公式:ParallelGCThreads = 8 + ((N - 8) * 5/8) = 3 +((5*CPU)/ 8)
8:-XX:ParallelGCThreads=20
# 标记线程的数量
8:-XX:ConcGCThreads=8
# G1为分配担保预留的空间比例 默认10%
8:-XX:G1ReservePercent=15
# 表示每次GC最大的停顿毫秒数,默认200,减少该值会增加系统load。
8:-XX:MaxGCPauseMillis=100

2、Elasticsearch配置优化

新增以下几个配置项():

# 缓存配置
# 分片级请求缓存模块在每个分片上缓存本地结果,默认1%
indices.requests.cache.size: 2%
# 节点查询缓存,默认10%
indices.queries.cache.size: 10%
# 字段数据缓存设置,默认无限制
indices.fielddata.cache.size: 10%
# 字段数据缓存设置断路器,默认50%
indices.breaker.fielddata.limit: 40%# 恢复配置
# 初始化数据恢复时,并发恢复线程的个数,默认为4
cluster.routing.allocation.node_initial_primaries_recoveries: 6

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/55523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

day16 代码回想录 二叉树03 二叉树的最大深度n叉树的最大深度二叉树的最小深度完全二叉树的节点个数

大纲 ● 104.二叉树的最大深度 ● 559.n叉树的最大深度 ● 111.二叉树的最小深度 ● 222.完全二叉树的节点个数 二叉树的最大深度 题目链接:104.二叉树的最大深度 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数 叶子节点是左右孩子节点都为空的节点 …

c#两个数进行交换

1.使用中间变量的形式 private static void Main(string[] args){int a110;int a220;ChangeNumber(ref a1,ref a2)onsole.WriteLine($"a1的值{a1},a2的值{a2}");Console.ReadLine();}public static void ChangeNumber(ref int a1, ref int a2){int temp a1;//temp10…

机器学习实战之模型的解释性:Scikit-Learn的SHAP和LIME库

概要 机器学习模型的“黑箱”困境 机器学习模型的崛起让我们惊叹不已!不论是预测房价、识别图片中的猫狗,还是推荐给你喜欢的音乐,这些模型都表现得非常出色。但是,有没有想过,这些模型到底是如何做出这些决策的呢&a…

【实操干货】如何开始用Qt Widgets编程?(三)

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 在本文中&#xff0…

Unity——拖尾特效

拖尾是一种很酷的特效。拖尾的原理来自人类的视觉残留:观察快速移动的明亮物体,会看到物体移动的轨迹。摄像机通过调整快门时间,也可以拍出具有拖尾效果的照片,如在城市的夜景中,汽车的尾灯拖曳出红色的线条。 在较老…

如何选择合适的损失函数

目录 如何选择合适的损失函数 1、均方误差,二次损失,L2损失(Mean Square Error, Quadratic Loss, L2 Loss) 2、平均绝对误差,L1损失(Mean Absolute Error, L1 Loss) 3、MSE vs MAE &#xff…

DevOps之自动化测试

什么是自动化测试? 明确一下自动化测试不是什么。自动化测试不是指自动化生成测试代码,而是自动化地执行由开发人员或测试人员编写的测试代码。正如下面这句谚语:“绝不要手工去做任何可以被自动化处理的事情。——Curt Hibbs” 之前是由人…

leetcode做题笔记102. 二叉树的层序遍历

给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 思路一:递归 int** levelOrder(struct TreeNode* root, int* returnSize, int** returnColumnSizes){int** ans(int**)mal…

在ubuntu上部署label-studio

1. 安装label-studio 由于服务器的默认python3版本太低,尝试了很多方法,没有升级。因此采用annaconda方式安装label-studio. a.安装anaconda: 参照如下链接,安装anaconda。 Ubuntu安装Anaconda详细步骤(Ubuntu22.04.1&#xff…

复现【YOLO v7 + 各种tracker实现多目标跟踪】

参照YOLO v7 各种tracker实现多目标跟踪配置环境 1、配置要求 python3.7.0 pytorch1.7.0 torchvision0.8.0 cudatoolkit11.0py-motmetrics (pip install motmetrics)cython-bbox (pip install cython_bbox)opencv 2、配置过程 创建py37虚拟环境 conda create -n uavMOT p…

G. The Morning Star - 思维

分析: 直接暴力就会tle,不知道怎么下手,可以统计八个方向一条线上的所有坐标,这些坐标一定可以放在一起满足,分析都有哪些线,当横坐标相同时会有竖着的一条线都可以,也就是x c,当纵…

Midjourney 完整版教程(从账号注册到设计应用)

目录 一、Midjourney 介绍 二、Midjourney 的AI出图示例 三、手把手教你上手Midjourney 1、账号&初始化 1.1 账号注册登录 1.2 账号付费 1.3 账号初始化 2、Midjourney的基础设置 3、Midjourney 出图步骤。 (一)直接描述出图 (二)垫图生图。 4、Midjourney的…

安装elasticsearch8.9.0及修改配置

安装es流程 打开文件,添加以下行 vim /etc/sysctl.conf vm.max_map_count=262144重启生效 sysctl -p创建用户 useradd es passwd es修改es目录所属用户 chown -R es:es /opt/elasticsearch-8.9.0如果内存不足,可以修改es的初始化内存和Max内存,修改文件/opt/elasticsearch-8…

C 连接MySQL8

Linux 安装MySQL 8 请参考文章&#xff1a;Docker 安装MySQL 8 详解 Visual Studio 2022 编写C 连接MySQL 8 C源码 #include <stdio.h> #include <mysql.h> int main(void) {MYSQL mysql; //数据库句柄MYSQL_RES* res; //查询结果集MYSQL_ROW row; //记录结…

ruoyi-cloud部署

默认你已经安装mysql&#xff0c;nacos&#xff0c;seata&#xff0c;sentinel等&#xff08;没有的可以先找教程安装&#xff09; 1、下载源码&#xff1a;git clone https://gitee.com/zhangmrit/ruoyi-cloud 2、项目依赖导入&#xff0c;选择自己的maven环境等&#xff0c;创…

数组、对象和类数组遍历方式

数组遍历方法&#xff1a; every(),some(),entries(),fill(),filter(),find(),for..of,for 循环&#xff0c;forEach,includes(),indexof(),join(),map(),reduce(),sort(),reverse(),flat() 对象遍历方法&#xff1a; for...in Object.keys(obj) Object.values(obj) Obje…

Linux环境下交叉编译环境安装、编译和运行

Win11主机上安装虚拟机&#xff0c;虚拟机内运行Ubuntu20.04&#xff0c;为了能够在本地电脑&#xff08;Win11&#xff09;上开发测试软件和算法&#xff0c;最终将编译好的可执行文件拷贝到Linux板上&#xff08;Rk3288上运行linux系统&#xff09;运行&#xff0c;因此需要安…

经典算法之滑动窗口-暴力解法+单调队列解法

作用&#xff1a;通常求最大(小)子数组/子序列/值 package com.xch.niuke;import java.util.Arrays; import java.util.LinkedList; import java.util.List;/*** 滑动窗口** author XuChenghe* date 2023/8/27 12:18*/ public class Main001 {public static void main(String[…

从 Future 到 CompletableFuture:简化 Java 中的异步编程

引言 在并发编程中&#xff0c;我们经常需要处理多线程的任务&#xff0c;这些任务往往具有依赖性&#xff0c;异步性&#xff0c;且需要在所有任务完成后获取结果。Java 8 引入了 CompletableFuture 类&#xff0c;它带来了一种新的编程模式&#xff0c;让我们能够以函数式编…