]"的数据将出错-6ren"> ]"的数据将出错-在顺利工作了10多个月之后,我在执行简单的搜索查询时突然开始在生产中遇到此错误。 { "error" : { "root_cause" : [ { "type"-6ren">
gpt4 book ai didi

node.js - "[circuit_breaking_exception] [parent]"数据太大,"[]"的数据将出错

转载 作者:行者123 更新时间:2023-12-02 22:15:18 25 4
gpt4 key购买 nike

在顺利工作了10多个月之后,我在执行简单的搜索查询时突然开始在生产中遇到此错误。

{
"error" : {
"root_cause" : [
{
"type" : "circuit_breaking_exception",
"reason" : "[parent] Data too large, data for [<http_request>] would be [745522124/710.9mb], which is larger than the limit of [745517875/710.9mb]",
"bytes_wanted" : 745522124,
"bytes_limit" : 745517875
}
],
"type" : "circuit_breaking_exception",
"reason" : "[parent] Data too large, data for [<http_request>] would be [745522124/710.9mb], which is larger than the limit of [745517875/710.9mb]",
"bytes_wanted" : 745522124,
"bytes_limit" : 745517875
},
"status" : 503
}

最初,当我遇到此 circuit_breaking_exception 错误时,在执行简单术语查询时遇到此错误,要调试此问题,我在Elasticsearch群集上尝试了_cat/health查询,但仍然是相同的错误,即使是最简单的查询 本地主机:9200 给出相同的错误不确定群集突然发生了什么。
她是我的断路器状态:
"breakers" : {
"request" : {
"limit_size_in_bytes" : 639015321,
"limit_size" : "609.4mb",
"estimated_size_in_bytes" : 0,
"estimated_size" : "0b",
"overhead" : 1.0,
"tripped" : 0
},
"fielddata" : {
"limit_size_in_bytes" : 639015321,
"limit_size" : "609.4mb",
"estimated_size_in_bytes" : 406826332,
"estimated_size" : "387.9mb",
"overhead" : 1.03,
"tripped" : 0
},
"in_flight_requests" : {
"limit_size_in_bytes" : 1065025536,
"limit_size" : "1015.6mb",
"estimated_size_in_bytes" : 560,
"estimated_size" : "560b",
"overhead" : 1.0,
"tripped" : 0
},
"accounting" : {
"limit_size_in_bytes" : 1065025536,
"limit_size" : "1015.6mb",
"estimated_size_in_bytes" : 146387859,
"estimated_size" : "139.6mb",
"overhead" : 1.0,
"tripped" : 0
},
"parent" : {
"limit_size_in_bytes" : 745517875,
"limit_size" : "710.9mb",
"estimated_size_in_bytes" : 553214751,
"estimated_size" : "527.5mb",
"overhead" : 1.0,
"tripped" : 0
}
}

我在 Github Issue中发现了一个类似的问题,它建议增加断路器的内存或将其禁用。但是我不确定该选择什么。请帮忙!

Elasticsearch 6.3版

最佳答案

经过进一步研究后,我找到了解决方案,即

  • 我们不应该禁用断路器,因为它可能会导致OOM错误,并最终使 Elasticsearch 崩溃。
  • 动态增加断路器的内存百分比是不错的选择,但这也是一个临时解决方案,因为在解决方案结束后,最终可能还会填满增加的百分比。
  • 最后,我们有第三种选择,即增加整体JVM堆大小,默认情况下为1GB,但根据建议,生产时应为30-32 GB,还应少于可用总内存的50%。

  • 有关更多信息,请检查此以获取生产中的 Elasticsearch Heap: Sizing and Swapping的良好JVM内存配置。

    关于node.js - "[circuit_breaking_exception] [parent]"数据太大,"[<http_request>]"的数据将出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61870751/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com