es官方为我们提供的堆内存保护机制-熔断器( breaker )

2023-10-08 20:30

本文主要是介绍es官方为我们提供的堆内存保护机制-熔断器( breaker ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

总熔断器(相当于似乎总闸)
参数: indices.breaker.total.use_real_memory

默认值:true

在 elasticsearch.yml中配置。

参数: indices.breaker.total.limit

如果 indices.breaker.total.use_real_memory : true, indices.breaker.total.limit 为堆大小的 95%。如果为false, indices.breaker.total.limit 为堆大小的70%

意思是,默认情况下。当堆内存使用95%,就报错触发熔断了。

field data 熔断器
参数: indices.breaker.fielddata.limit

默认值:堆的 40%

request 熔断器
for example, memory used for calculating aggregations during a request) from exceeding a certain amount of memory.

请求用于计算的内存,例如一次agg请求,使用内存如何超过阈值,就会熔断。

indices.breaker.request.limit

默认值:堆的 60%

in flight requests 熔断器
我的理解是:整个传入请求体占用的内存。

The in flight requests circuit breaker allows Elasticsearch to limit the memory usage of all currently active incoming requests on transport or HTTP level from exceeding a certain amount of memory on a node. The memory usage is based on the content length of the request itself. This circuit breaker also considers that memory is not only needed for representing the raw request but also as a structured object which is reflected by default overhead.

参数: network.breaker.inflight_requests.limit

默认值:堆的 100% (受限于总熔断器的限制)

accounting circuit breaker
限制在请求完成时未释放的内存中保存的内容的内存使用。这包括诸如 Lucene 段内存之类的内容。

参数: indices.breaker.accounting.limit

默认值:堆的 100%(受限于总熔断器的限制)

script(脚本) 熔断器
脚本编译的次数限制。

参数: script.max_compilations_rate

默认值 :150/5m 这是一个速率的值,代表五分钟内 150次

正则表达式熔断器
script.painless.regex.limit-factor

参数值: 例如,输入foobarbaz的字符长度为9。If script.painless.regex.limit-factoris 6,正则表达式foobarbaz 最多可以考虑 54 (9 * 6) 个字符。如果表达式超过此限制,它会触发正则表达式断路器并返回错误。

参数: script.painless.regex.enabled

是否开启正则表达式熔断器。

limited(默认)

启用正则表达式,但使用 script.painless.regex.limit-factor 集群设置限制复杂性。

true

启用没有复杂性限制的正则表达式。禁用正则表达式断路器。

false

禁用正则表达式。任何包含正则表达式的 Painless 脚本都会返回错误。
————————————————
版权声明:本文为CSDN博主「水的精神」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/star1210644725/article/details/123767568

这篇关于es官方为我们提供的堆内存保护机制-熔断器( breaker )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/167790

相关文章

Mybatis官方生成器的使用方式

《Mybatis官方生成器的使用方式》本文详细介绍了MyBatisGenerator(MBG)的使用方法,通过实际代码示例展示了如何配置Maven插件来自动化生成MyBatis项目所需的实体类、Map... 目录1. MyBATis Generator 简介2. MyBatis Generator 的功能3

一文带你理解Python中import机制与importlib的妙用

《一文带你理解Python中import机制与importlib的妙用》在Python编程的世界里,import语句是开发者最常用的工具之一,它就像一把钥匙,打开了通往各种功能和库的大门,下面就跟随小... 目录一、python import机制概述1.1 import语句的基本用法1.2 模块缓存机制1.

Redis主从/哨兵机制原理分析

《Redis主从/哨兵机制原理分析》本文介绍了Redis的主从复制和哨兵机制,主从复制实现了数据的热备份和负载均衡,而哨兵机制可以监控Redis集群,实现自动故障转移,哨兵机制通过监控、下线、选举和故... 目录一、主从复制1.1 什么是主从复制1.2 主从复制的作用1.3 主从复制原理1.3.1 全量复制

Redis缓存问题与缓存更新机制详解

《Redis缓存问题与缓存更新机制详解》本文主要介绍了缓存问题及其解决方案,包括缓存穿透、缓存击穿、缓存雪崩等问题的成因以及相应的预防和解决方法,同时,还详细探讨了缓存更新机制,包括不同情况下的缓存更... 目录一、缓存问题1.1 缓存穿透1.1.1 问题来源1.1.2 解决方案1.2 缓存击穿1.2.1

Java如何通过反射机制获取数据类对象的属性及方法

《Java如何通过反射机制获取数据类对象的属性及方法》文章介绍了如何使用Java反射机制获取类对象的所有属性及其对应的get、set方法,以及如何通过反射机制实现类对象的实例化,感兴趣的朋友跟随小编一... 目录一、通过反射机制获取类对象的所有属性以及相应的get、set方法1.遍历类对象的所有属性2.获取

MySQL中的锁和MVCC机制解读

《MySQL中的锁和MVCC机制解读》MySQL事务、锁和MVCC机制是确保数据库操作原子性、一致性和隔离性的关键,事务必须遵循ACID原则,锁的类型包括表级锁、行级锁和意向锁,MVCC通过非锁定读和... 目录mysql的锁和MVCC机制事务的概念与ACID特性锁的类型及其工作机制锁的粒度与性能影响多版本

Spring使用@Retryable实现自动重试机制

《Spring使用@Retryable实现自动重试机制》在微服务架构中,服务之间的调用可能会因为一些暂时性的错误而失败,例如网络波动、数据库连接超时或第三方服务不可用等,在本文中,我们将介绍如何在Sp... 目录引言1. 什么是 @Retryable?2. 如何在 Spring 中使用 @Retryable

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

Java ArrayList扩容机制 (源码解读)

结论:初始长度为10,若所需长度小于1.5倍原长度,则按照1.5倍扩容。若不够用则按照所需长度扩容。 一. 明确类内部重要变量含义         1:数组默认长度         2:这是一个共享的空数组实例,用于明确创建长度为0时的ArrayList ,比如通过 new ArrayList<>(0),ArrayList 内部的数组 elementData 会指向这个 EMPTY_EL