solr 之分布式索引库同步,分发
solr在这方面做的很给力啊。在配置文件中已经明确的说明了。
1.如果是主索引服务器(这个服务器最好只负责对主索引库,与数据库进行数据的同步)。
    <requestHandler name="/replication" class="solr.ReplicationHandler" >
       <lst name="master">
         <!--当执行什么操作的时候才同步索引服务器-->
         <str name="replicateAfter">commit</str>
         <str name="replicateAfter">startup</str>
         <!--同步的文件-->
         <str name="confFiles">schema.xml,stopwords.txt,elevate.xml</str>
         <!--每隔多少时间同步-->
         <str name="commitReserveDuration">00:00:60</str>
         <!--用户名密码-->
         <str name="httpBasicAuthUser">238</str>
         <str name="httpBasicAuthPassword">238</str>
       </lst>
     </requestHandler>
               2.如果是从索引服务器(这些服务器负责)
<requestHandler name="/replication" class="solr.ReplicationHandler" >  
          <lst name="slave">         
             <str name="masterUrl">http://localhost:port/solr/corename/replication</str>  
             <str name="pollInterval">00:05:00</str> 
             <str name="compression">internal</str>  
            <str name="httpConnTimeout">5000</str>  
            <str name="httpReadTimeout">10000</str>
            <str name="httpBasicAuthUser">238</str>  
            <str name="httpBasicAuthPassword">238</str>
          </lst> 
</requestHandler>  
这样就实现了每隔一段时间索引库之间的同步。一般主索引服务器只做数据库更新操作,而从服务器做索引查询。
 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号