如何在弹性搜索集群中杀死搜索请求的线程?有没有一些API可以做到这一点?

Hoo*_*ony 6 kill-process elasticsearch

我创建了一个包含大数据的弹性搜索集群,客户端可以向其发送搜索请求.有时,群集需要花费很多时间来处理一个请求.我的问题是,是否有任何API杀死指定的线程,这花费了太多时间?

Mat*_*ewJ 2

既然elasticsearch 1.0.0 已经发布了,我想跟进这个答案。我很高兴地宣布,引入了一项新功能,可以为堆实现一些保护,称为断路器。

在当前的实现中,断路器会尝试预测有多少数据将被加载到字段数据缓存中,如果它大于限制(默认为 80%),它将触发断路器并终止您的查询。

如果要修改,有两个参数可供设置:

indices.fielddata.breaker.limit

indices.fielddata.breaker.overhead
Run Code Online (Sandbox Code Playgroud)

开销是一个常量,用于估计有多少数据将加载到字段缓存中;默认情况下为 1.03。

这是 Elasticsearch 的一个令人兴奋的发展,也是我几个月来一直等待实现的功能。

如果有兴趣了解它是如何制作的,这是拉取请求;感谢达克龙完成了这件事!

https://github.com/elasticsearch/elasticsearch/pull/4261

希望这有帮助,马修