ElasticSearch批量修改报错
[toc]
# 报错内容
Too many dynamic script compilations within, max: [75/5m]
1
- 这个错误是由于ElasticSearch在一段时间内编译的脚本数量超过了限制。默认情况下,ElasticSearch每5分钟只允许编译75个唯一的脚本。这个限制是为了防止脚本编译过多导致的性能问题。
# 解决方法
# 方法一:增加脚本编译的限制
你可以通过修改ElasticSearch的设置来增加这个限制。例如,你可以将限制提高到每5分钟200个脚本。你可以通过以下命令来修改这个设置:
PUT /_cluster/settings
{
"persistent" : {
"script.max_compilations_rate" : "200/5m"
}
}
1
2
3
4
5
6
2
3
4
5
6
这个命令将会把限制提高到每5分钟200个脚本。请注意,这可能会增加ElasticSearch的CPU使用率,因此请根据你的实际情况来设置这个值。
# 方法二:重用脚本
如果你的脚本有很多重复的部分,你可以考虑将这些部分提取出来,作为一个单独的脚本来使用。这样,ElasticSearch就只需要编译一次这个脚本,而不是每次都编译。这可以通过使用ElasticSearch的脚本库来实现。
上次更新: 2024/02/01, 21:00:05