HttpSolrServer实例管理

时间:2012-08-13 09:08:10

标签: java solr thread-safety solrj

在Web应用程序中的多个线程之间共享单个HttpSolrServer是否安全?推荐吗?

每次构建一个新实例是否昂贵?在我的机器上大约需要10毫秒。

2 个答案:

答案 0 :(得分:3)

查看HttpSolrServergrepcode

的来源后的一些观察结果
  1. 没有将请求特定数据维护为类变量。因此,只要所有配置参数(如基本URL,连接超时等)都未被任何线程修改,HttpSolrServer的实例就可以在多线程环境中安全使用。

  2. HttpSolrServer内部使用类ThreadSafeClientConnManager来管理内部http-client连接上的线程安全性(它使用Apache HTTP Client 4.x连接到solr )。这可确保在与Solr服务器通信时不存在线程安全问题。

答案 1 :(得分:0)