solr与.net系列课程(七)solr主从复制

solr与.net系列课程(七)solr主从复制既然solr是解决大量数据全文索引的方案,由于高并发的问题,我们就要考虑solr的负载均衡了,solr提供非常简单的主从复制的配置方法,那么下面我们就
强烈推介IDEA2021.1.3破解激活,IntelliJ IDEA 注册码,2021.1.3IDEA 激活码  

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分钟。

    接下来配置从服务器

    还是同一个文件下的那个节点

此代码由Java架构师必看网-架构君整理
<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支持多个从服务器

架构君码字不易,如需转载,请注明出处:https://javajgs.com/archives/42156
0

发表评论