我在我的项目中使用Elasticsearch,在其中搜索给定索引上的结果。 对于同一查询,我可以看到将响应返回给我的服务的时间有所不同,可以理解的变化很小,但变化以秒为单位。相同查询的示例可能会在200-300毫秒内响应,同时我可以看到在10-15秒内收到了响应。当使用相同的查询对Jmeter进行性能测试时,显示的最小值为225 ms,最大值为10sec。不知道为什么会出现偏差。 我使用的是ES版本5.4,查询很复杂,因为我使用功能评分来提供自定义评分。我正在搜索多个索引以获取结果,每个索引计数中存储的文档将在每个索引中大约200-500个文档,因此没有。分片的数量为1,副本的数量为2。 关于如何减少查询时间的任何想法或建议都是很好的,即使我能够平均达到500毫秒也可以。
谢谢