是否可以在spring数据elasticsearch中设置readTimeout?
场景:我的应用程序正在尝试使用elasticsearch模板查询elasticsearch,但有时会花费很多时间并且请求会被堆积起来。 Plz不要将它与客户端ping超时混淆。 在弹性搜索中有2-3个Cr文件,在我的应用程序上就像100 rps。 提前谢谢。
答案 0 :(得分:0)
没有办法使用SpringData的ElasticSearchTemplate为每个查询指定写入超时。 请检查这个答案: - https://stackoverflow.com/a/40558236/2357869
你可以使用Elastic search core java api, 尝试使用这个类: - org.elasticsearch.action.ActionFuture.actionGet
SearchRequestBuilder countRequestBuilder = esClient.prepareSearch("index").setTypes("type").setQuery(searchQuery);
SearchResponse response = countRequestBuilder.execute().actionGet(time_out, TimeUnit.SECONDS);
答案 1 :(得分:0)
我相信有一个属性可以用于此目的:
spring.elasticsearch.jest.connection-timeout=3000 # Connection timeout in milliseconds.
spring.elasticsearch.jest.multi-threaded=true # Enable connection requests from multiple execution threads.
也应该以yml样式在Spring Boot中工作