我们在使用Elasticsearch过程中可以不能满足于已有的Setting,我们可能需要自定义一些配置,实现非常简单,话不多说,直接上图。
Elasticsearch会在启动的时候加载配置,配置不一定要写到固定的某个地方,这里拿SearchService距举例,SearchService在Elasticsearch启动的时候会进行加载,同时进行配置文件的加载。
我们增加一个search.took_timeout配置,用来限制查询的超时限制。
- SearchService类中增加配置,默认值10000,最小值1000
- 构建一个tookTimeout变量,因为我们的配置设置可修改,所以最好加上volatile关键字
- 初始化tookTimeout变量,载入配置,这里我们使用tookTimeout就是配置内容了
- 配置可动态修改,这里注意配置项必须是Property.Dynamic,否则启动会报错
- ClusterSettings类中增加TOOK_TIMEOUT
- 完成



