如何实现传输客户端来运行使用ElasticSearch作为数据库的网站?

如何实现传输客户端来运行使用ElasticSearch作为数据库的网站?,
Warning: implode(): Invalid arguments passed in /data/phpspider/zhask/webroot/tpl/detail.html on line 45
,,目标:创建一个使用ElasticSearch交付内容的网站 问题:将有许多用户同时访问该网站 选项: 为每个请求创建并销毁传输客户端对象 创建将被重用的传输客户端对象池 将传输客户端对象用作单例 根据,节点客户端不是此场景的选项 技术背景,如果它有任何区别:该网站将使用Java播放框架。将会有一个花哨的JS前端,预计会有许多小的AJAX HTTP请求骚扰ElasticSearch。将传输客户端用作单例。将传输客户端用作单例。您能详细说明原因吗?如果查询需要一点时间,这不是对其他请求的阻塞吗?@r

目标:创建一个使用ElasticSearch交付内容的网站

问题:将有许多用户同时访问该网站

选项:

  • 为每个请求创建并销毁传输客户端对象

  • 创建将被重用的传输客户端对象池

  • 将传输客户端对象用作单例

  • 根据,节点客户端不是此场景的选项


    技术背景,如果它有任何区别:该网站将使用Java播放框架。将会有一个花哨的JS前端,预计会有许多小的AJAX HTTP请求骚扰ElasticSearch。

    将传输客户端用作单例。

    将传输客户端用作单例。

    您能详细说明原因吗?如果查询需要一点时间,这不是对其他请求的阻塞吗?@rapstacke,因为ElasticSearch的创建者这么说,请参阅,对集群的请求是异步和非阻塞的。避免创建多个TransportClient,因为每个TransportClient都会生成自己的线程池,并随着集群中节点的数量而增长。你可以像这里显示的那样摆弄线程池——当然,这不在文档中。我同意这在井中不是非常明显。我只是说,在应用程序启动时,
    //on startup
    可能比这更好。你想开一家公关公司吗?对不起,我不知道你的意思。我说的是未提及的传输客户端线程池的可能设置,这些设置没有文档记录。请参阅我的第二条评论的第二个链接。或者在这里:你能解释一下原因吗?如果查询需要一点时间,这不是对其他请求的阻塞吗?@rapstacke,因为ElasticSearch的创建者这么说,请参阅,对集群的请求是异步和非阻塞的。避免创建多个TransportClient,因为每个TransportClient都会生成自己的线程池,并随着集群中节点的数量而增长。你可以像这里显示的那样摆弄线程池——当然,这不在文档中。我同意这在井中不是非常明显。我只是说,在应用程序启动时,
    //on startup
    可能比这更好。你想开一家公关公司吗?对不起,我不知道你的意思。我说的是未提及的传输客户端线程池的可能设置,这些设置没有文档记录。请参阅我的第二条评论的第二个链接。或在此: