用ElasticSearch Nest缓存客户端连接,这样对客户端的第一次调用就会很快



我准备用NEST客户端为ElasticSearch设置建议搜索。理想情况下,我会开始匹配作为第二个字符输入。但是,我第一次调用客户端需要600ms。随后的每次调用更像是20毫秒。是否有一种方法可以缓存或准备NEST客户机?

我读过这篇文章:Elasticsearch和。net

我还读到,我可以创建一个新的客户端或使用相同的客户端实例,没有任何影响。

我只是想在调用它之前让客户端准备好使用,这样用户就不用等待客户端验证自己了。

目前,当用户点击网站时,我正在与客户端建立连接,然后在会话中保存客户端引用。然而,第一次搜索仍然很慢,即使我已经建立了连接。是否有一种方法可以预加载/缓存连接,以便在页面加载期间发生延迟?

每个AppDomain建立第一个命中缓存。因此,您不需要缓存客户机本身。在第一次命中之后要实例化的每个客户端都将是warm

我已经打开了一个工作票据,这样你就可以在应用程序启动时启动预热过程,这样你就不会再因为预热成本而惩罚系统的第一个用户了。

https://github.com/elasticsearch/elasticsearch-net/issues/742

最新更新