solr與.net系列課程(七)solr主從復制


solr與.net系列課程(七)solr主從復制

   既然solr是解決大量數據全文索引的方案,由於高並發的問題,我們就要考慮solr的負載均衡了,solr提供非常簡單的主從復制的配置方法,那么下面我們就來配置一下solr的主從復制

   假設我們在192.168.0.8與192.168.0.9兩台服務器上部署了solr服務,192.168.0.8作為主服務器,192.168.0.9作為從服務器,

   首先配置主服務器找到C:\Program Files\Apache Software Foundation\Tomcat 7.0\solr\collection1\conf(solr核心collection1安裝路徑)下的solrconfig.xml 文件

   在該文件下找到<requestHandler name="/replication" class="solr.ReplicationHandler" >節點,默認是注釋的,改為:

<requestHandler name="/replication" class="solr.ReplicationHandler" >
  <lst name="master">
    <!-- master上有數據寫入時,觸發commit操作,slave就會發起一次同步請求-->
    <str name="replicateAfter">commit</str>
    <!-- startup參數不影響同步請求-->
  <str name="replicateAfter">startup</str>
  <!-- master觸發optimize操作,slave就會發起一次同步請求-->
  <!--  <str name="replicateAfter">optimize</str>-->
  <!-- 除了索引同步外,一些配置文件的同步,默認是在conf目錄下 -->
    <str name="confFiles">schema.xml,mapping-ISOLatin1Accent.txt,protwords.txt,stopwords.txt,synonyms.txt,elevate.xml</str>
  </lst>

 </requestHandler>

 

參數含義:

  • replicateAfter : SOLR會自行在以下操作行為發生后執行復制: 'commit', 'startup' 'optimize',這里我們選擇commit , 即SOLR每一次接受到commit請求后,會執行復制策略。
  • confFiles : 待分發的配置文件,solr 也會將主服務器上的字段配置文件:schema.xml和stopwords.txt,固排文件: elevate.xml同步到輔服務器上。
  • commitReserveDuration: 每次commit之后,保留增量索引的周期時間,這里設置為5分鍾。

    接下來配置從服務器

    還是同一個文件下的那個節點

<requestHandler name="/replication" class="solr.ReplicationHandler" > 
   
       <lst name="slave">
       <!-- masterUrl代表主機的solr路徑,如果存在多個core時,地址寫http://localhost:9001/solr/(core名)  即可 -->
         <str name="masterUrl">http://192.168.0.8/solr/collection1</str>
     <!-- 同步時間間隔10秒一次 -->
         <str name="pollInterval">00:00:10</str>
       </lst>
     
  </requestHandler>

參數說明:

  • masterUrl : 主服務器同步URL地址
  • pollInterval:從服務器同步間隔,即每隔多長時間同步一次主服務器
  • httpConnTimeout:設置連接超時(單位:毫秒)
  • httpReadTimeout:如果設置同步索引文件過大,則應適當提高此值。(單位:毫秒)
  • httpBasicAuthUser:驗證用戶名,需要和主服務器一致
  • httpBasicAuthPassword:驗證密碼,需和主服務器一致
  • compression:external or internal 使用SOLR自己的壓縮算法或應用容器的

最后別忘了重啟兩台solr服務器,這樣就配置完成了,solr支持多個從服務器


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM