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支持多个从服务器

solr与.net系列课程(七)solr主从复制的更多相关文章

  1. solr与.net系列课程(八)solr中重跑索引的注意事项

    solr与.net系列课程(八)solr中重跑索引的注意事项 我们如果在项目中使用solr,那肯定就是把数据库中的数据跑进solr服务器中,solr有两种操作一种是新建索引,一种是增量索引,这里我们来 ...

  2. solr与.net系列课程(六)solr定时增量索引与安全

     solr与.net系列课程(六)solr定时增量索引与安全 solr增量索引的方式,就是一个Http请求,但是这样的请求显然不能满足要求,我们需要的是一个自动的增量索引,solr官方提供了一个定时器 ...

  3. solr与.net系列课程(四)solr查询参数的讲解与.net如何获取solr数据

    solr与.net系列课程(四)solr查询参数的讲解与.net如何获取solr数据 上一节我们完成了solr连接数据库,细心的朋友会发现一个问题,就是solr其实和语言没有任何关系,配置完成后任何语 ...

  4. solr与.net系列课程(三)solr连接数据库

     solr与.net系列课程(三)solr连接数据库 上一章直接讲述的配置文件把大部分人看的很迷惑,大家都想听的是solr到底是怎么用的,好,这一节我们就开始链接数据库,首先讲一下连接之前都要配置哪些 ...

  5. solr与.net系列课程(二)solr的配置文件及其含义

    solr与.net系列课程(二)solr的配置文件及其含义  本节内容还是不会涉及到.net与数据库的内容,但是不要着急,这都是学时solr必学要掌握的东西,solr可不是像其他的dll文件一样,只需 ...

  6. solr与.net系列课程(一)solr的安装与配置

    不久之前开发了一个项目,需要用到solr,因为所以在开始再网上查找资料,但是发现大部分的资料都是很片面的,要么就是只讲解solr如何安装的,要么就是只讲解solr的某一个部分的,而且很多都是资料都是一 ...

  7. solr与.net系列课程(五)solrnet的使用

     solr与.net系列课程(五)solrnet的使用 最近因项目比较忙,所以这篇文章出的比较晚,离上一篇文章已经有半个月的时间了,这节课我们来学下一下solr的.net客户端solrnet 出处   ...

  8. solr与.net系列课程(九)solr5.1的配置

    solr与.net系列课程(九)solr5.1的配置 最近一些园友来咨询solr5.1的配置方式,然后我就去官网下载了个最新版本的solr,发现solr5.0以后solr的下载包里的内容发生的变化,移 ...

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

    既然solr是解决大量数据全文索引的方案,因为高并发的问题,我们就要考虑solr的负载均衡了,solr提供很easy的主从复制的配置方法,那么以下我们就来配置一下solr的主从复制 如果我们在192. ...

随机推荐

  1. 34、Shiro框架入门三,角色管理

    //首先这里是java代码,就是根据shiro-role.ini配置文件中的信息来得到role与用户信息的对应关系//从而来管理rolepublic class TestShiroRoleTest e ...

  2. Reactjs 入门基础(三)

    State 和 Props以下实例演示了如何在应用中组合使用 state 和 props .我们可以在父组件中设置 state, 并通过在子组件上使用 props 将其传递到子组件上.在 render ...

  3. SystemVerilog的历史

    随着软件的功能需求越来越复杂,C语言不足以解决现有的问题,于是C++被发明了:C++的指针漫天飞,对内存的处理过于复杂,于是Java被发明了:芯片的功能不断地扩大,Verilog不足以应对日益复杂的芯 ...

  4. ntc 热敏电阻

    来自维基百科  http://zh.wikipedia.org/zh/%E7%83%AD%E6%95%8F%E7%94%B5%E9%98%BB 热敏电阻的电阻值是根据温度由公式计算而来的,知道这一点就 ...

  5. CLR VIA C#委托

    1.什么是委托?委托就是一种回调函数的机制,将函数作为一个参数传递给其他对象,当该对象需要的时候调用委托来达到回调函数的目的. 通俗点的说法是:你将一件事情交给别人去做.例如你QQ里的自动回复,为了第 ...

  6. servlet3.0,web.xml的metadata-complete的作用

    metadata-complete是servlet3.0规范中的新增的属性,该属性接受两个属性值,true或false.当该属性值为true时,该web应用将不会加载Annotation配置的web组 ...

  7. .net 更新数据 ado.net parameter

    UPDATE yborder_ordernotes SET recoder400= @FileAddress, havefile400 = 1 WHERE id = @OrderID Maticsof ...

  8. 读取assets文件夹下图片(ods_interview)

    今天看了一道题,现在总结一下里面使用到的知识点: 1.assets文件的访问: 原文出处:http://blog.csdn.net/fengyuzhengfan/article/details/383 ...

  9. 安卓手机开机开启指定Activity

    1.布局 默认helloworld布局 2.class BootCompleteReceiver package lpc.com.project522; import android.content. ...

  10. CMS为什么采用“标记-清除”算法

    分代式GC里,年老代常用mark-sweep:或者是mark-sweep/mark-compact的混合方式,一般情况下用mark-sweep,统计估算碎片量达到一定程度时用mark-compact. ...