【发布时间】:2020-09-15 16:19:32
【问题描述】:
我正在使用 AWS Elasticsearch Service,我收到了很多 es_rejected_execution_exception。
根据他们的docs,我们应该提高应用程序的索引性能,添加更多节点或切换到更大的实例类型。
如果我精疲力竭地改进我的应用程序,添加更多节点或切换到大型实例类型哪个更好?
【问题讨论】:
-
您的弹性搜索指标看起来如何? CPU使用率、平均负载、磁盘读写等
-
CPU 和内存利用率接近 100%。
-
@OpsterElasticsearchNinja 如果我用尽了改进我的应用程序,哪个更好,添加更多节点或切换到更大的实例类型?
-
@CaeVecchi elasticsearch 是一个有状态的应用程序,所以添加新节点并不像无状态应用程序那样简单,这里需要重新分配其他节点上的分片以平衡所有数据节点上的负载,如果您的数据节点 ES 堆大小未超过 31 GB 并且总内存低于 64 GB,并且您的查询更占用内存,则可以向现有节点添加更多 RAM 和一些 CPU,否则您应该使用 HS(添加更多节点)
-
@CaeVecchi 顺便说一句,你应该用你的集群配置(数据节点的数量、它们的 RAM、CPU 和堆大小)和指标(cpu、ram、堆、GC、ES 队列)等来问这个问题这样我就可以根据这些数据点给出更好的解决方案:)
标签: amazon-web-services elasticsearch aws-elasticsearch