From 50e00a3e7527ca167f2fb000d63bfa593555dac4 Mon Sep 17 00:00:00 2001 From: "zi.tan" Date: Sat, 1 Jun 2019 15:22:57 +0800 Subject: [PATCH] modules/indices/circuit_breaker.asciidoc --- .../modules/indices/circuit_breaker.asciidoc | 78 +++++++------------ 1 file changed, 27 insertions(+), 51 deletions(-) diff --git a/docs/reference/modules/indices/circuit_breaker.asciidoc b/docs/reference/modules/indices/circuit_breaker.asciidoc index 03cdb307b9f1e..71ac070717cee 100644 --- a/docs/reference/modules/indices/circuit_breaker.asciidoc +++ b/docs/reference/modules/indices/circuit_breaker.asciidoc @@ -1,108 +1,84 @@ [[circuit-breaker]] -=== Circuit Breaker +=== 断路器 -Elasticsearch contains multiple circuit breakers used to prevent operations from -causing an OutOfMemoryError. Each breaker specifies a limit for how much memory -it can use. Additionally, there is a parent-level breaker that specifies the -total amount of memory that can be used across all breakers. +ElasticSearch 包含多个断路器,用于防止操作导致的内存不足错误。每个断路器都指定它可以使用的内存大小限制。此外,还有一个父级断路器指定所有断路器使用的内存总量。 -These settings can be dynamically updated on a live cluster with the -<> API. +这些设置可以在活跃群集上使用 <> API 来动态更新。 [[parent-circuit-breaker]] [float] -==== Parent circuit breaker +==== 父断路器 -The parent-level breaker can be configured with the following setting: +父级断路器可用以下设定来配置: `indices.breaker.total.limit`:: - Starting limit for overall parent breaker, defaults to 70% of JVM heap. + 开启全部父断路器的限制,默认为 JVM 堆的 70%。 [[fielddata-circuit-breaker]] [float] -==== Field data circuit breaker -The field data circuit breaker allows Elasticsearch to estimate the amount of -memory a field will require to be loaded into memory. It can then prevent the -field data loading by raising an exception. By default the limit is configured -to 60% of the maximum JVM heap. It can be configured with the following -parameters: +==== 字段数据断路器 + +字段数据断路器允许 ElasticSearch 估计字段需要加载到内存中的所需内存。它可以通过提出一个异常来防止加载字段数据。默认情况下,该限制配置为最大 JVM 堆的 60%。它可用如下参数配置: `indices.breaker.fielddata.limit`:: - Limit for fielddata breaker, defaults to 60% of JVM heap + 字段数据断路器的限制,默认为 JVM 对的 60%。 `indices.breaker.fielddata.overhead`:: - A constant that all field data estimations are multiplied with to determine a - final estimation. Defaults to 1.03 + 字段数据预估的乘数因子,用来决定最终评估的内存大小的常数。默认为 1.03。 [[request-circuit-breaker]] [float] -==== Request circuit breaker +==== 请求断路器 -The request circuit breaker allows Elasticsearch to prevent per-request data -structures (for example, memory used for calculating aggregations during a -request) from exceeding a certain amount of memory. +请求断路器允许 ElasticSearch 阻止每个请求数据结构超过一定的内存量(例如,一个请求中用来计算聚合的内存)。 `indices.breaker.request.limit`:: - Limit for request breaker, defaults to 60% of JVM heap + 请求断路器的限制,默认为 JVM 堆的60% `indices.breaker.request.overhead`:: - A constant that all request estimations are multiplied with to determine a - final estimation. Defaults to 1 + 一个常量,所有请求估算值都与该常量相乘以确定最终估算值。默认为1 [[in-flight-circuit-breaker]] [float] -==== In flight requests circuit breaker +==== 飞行中(In flight)请求断路器 -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. +飞行中请求断路器允许 ElasticSearch 限制所有当前在传输或 HTTP 层上的活动的传入请求,防止超过一个节点上的一定数量的内存。内存使用量基于请求本身的内容长度。 `network.breaker.inflight_requests.limit`:: - Limit for in flight requests breaker, defaults to 100% of JVM heap. This means that it is bound - by the limit configured for the parent circuit breaker. + 飞行请求中断器的限制,默认为 JVM 堆的100%。这意味着它受制于父断路器配置的限制。 `network.breaker.inflight_requests.overhead`:: - A constant that all in flight requests estimations are multiplied with to determine a - final estimation. Defaults to 1 + 一个常数,所有飞行中的请求估算值与之相乘,以确定最终估算值。默认值为1 [[accounting-circuit-breaker]] [float] -==== Accounting requests circuit breaker +==== 计数请求断路器Accounting requests circuit breaker -The accounting circuit breaker allows Elasticsearch to limit the memory -usage of things held in memory that are not released when a request is -completed. This includes things like the Lucene segment memory. +计数断路器允许 ElasticSearch 限制当请求完成时仍被内存持有的不会被释放的内存使用。这包括 Lucene 段内存等。 `indices.breaker.accounting.limit`:: - Limit for accounting breaker, defaults to 100% of JVM heap. This means that it is bound - by the limit configured for the parent circuit breaker. + 计数断路器的限制,默认为 JVM 堆的100%。这意味着它受制于父断路器配置的限制。 `indices.breaker.accounting.overhead`:: - A constant that all accounting estimations are multiplied with to determine a - final estimation. Defaults to 1 + 一个常数,所有计数估算值与之相乘,以确定最终估算值。默认值为1 [[script-compilation-circuit-breaker]] [float] -==== Script compilation circuit breaker +==== 脚本编译断路器 -Slightly different than the previous memory-based circuit breaker, the script -compilation circuit breaker limits the number of inline script compilations -within a period of time. +与之前基于内存的断路器略有不同,脚本编译断路器限制在一段时间内行内脚本编译的数量。 -See the "prefer-parameters" section of the <> -documentation for more information. +请参阅<>文档中的“首选参数”部分以获取更多信息。 `script.max_compilations_rate`:: - Limit for the number of unique dynamic scripts within a certain interval - that are allowed to be compiled. Defaults to 75/5m, meaning 75 every 5 - minutes. + 特定间隔内唯一动态脚本被允许编译的数量限制。默认为75/5m,即每5分钟75个。