每日学习笔记(26)

时间:2022-11-05 11:25:40

1 solr连接solr服务器时,如果你是执行查询动作,那么推荐使用的是CommonsHttpSolrServer,如果你是执行更新操作,那么推荐使用的是StreamingUpdateSolrServer,后者是会将所有的documents缓存在本地,然后一次性写入打开的HTTP连接中,并且是一个线程安全的类。

    值得注意的一点是,StreamingUpdateSolrServer在执行update语句后,不需要commit,只需要在solr服务器的solrConfig.xml配置文件中加入下述自动提交的片段,当满足maxDocs或者maxTime这两个条件之一时,客户端就会触发自动提交动作,将缓存中的documents一次性提交到solr服务器的HTTP连接中去。

< updateHandler  class ="solr.DirectUpdateHandler2" >     

   <autoCommit>
        <maxDocs>10000</maxDocs>
        <maxTime>1000</maxTime>
    </autoCommit>
  </updateHandler>