分布式环境下,由于高并发的问题,通常我们需要部署多台服务器来负载均衡,从而避免,单点访问的热点问题,或者因负载过高而造成服务器瘫痪的问题等等。
solr4.x之后推出了solrcloud的分布式集群方案,与4.x之前的Master/Slave集群模式,架构上发生了重大变化,solrcloud不仅仅解决了,高并发的负载均衡问题,也解决了海量数据的检索性能问题,对一份巨大的索引,采用分而治之的方法索引到多个独立的节点上,但是这样并不代表,4.x之前的Master/Slave架构就被淘汰出局了,其实solrcloud里面也是综合运用了主从的方式,来解决并发的问题。
如果数据量不是很大的情况下,没必要采用solrcloud方案,但这时候,又需要解决高并发问题,或者服务器单点故障问题怎么办?
答案还是采取经典的主从架构模式来解决,下面散仙来看下,在solr里面,具体的配置
第一,是在Master里面的配置如下:
<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>
第二,各个Slave上的配置如下:
<requestHandler name="/replication" class="solr.ReplicationHandler" >
<lst name="slave">
<!-- masterUrl代表主机的solr路径,如果存在多个core时,地址写http://localhost:9001/solr/(core名) 即可 -->
<str name="masterUrl">http://localhost:9001/solr</str>
<!-- 同步时间间隔10秒一次 -->
<str name="pollInterval">00:00:10</str>
</lst>
</requestHandler>
配置好之后,我们就可以测试了,分别启动Master和Slave,改变Master上的一些配置文件,比如说,同义词,禁用词文件什么的,然后触发Master节点的commit或optimize操作,这时我们就可以查看Slave节点上对应的文件的变化了。
分享到:
相关推荐
在你提供的资料中,"solr4.3源代码二"显然是Solr 4.3版本的源代码包,这将包含Solr的核心组件和相关配置。通过SVN下载的源代码表明,你可以追踪代码的历史版本,这对于理解和解决潜在问题非常有帮助。 首先,我们来...
Solr4.3是Apache Solr的一个早期版本,它是一个基于Lucene的全文搜索服务器,提供了高可配置、可扩展的搜索和分析功能。Solr4.3源代码的获取通常是为了深入理解其内部工作原理,进行定制开发或优化。在你提供的信息...
solr4.3 分词器 把IKAnalyzer.jar放到solr\WEB-INF\lib下。
ik-analyzer-5.01-for solr4.3.jar
最新版solr4.3的IK分词器,中文分词效果良好!对付一般的大众分词没有问题
Solr集群安装与配置(一)第11讲 Solr集群安装与配置(二)第12讲 SolrCloud基本概念第13讲 Solrj操作SolrCloud第14讲 solr索引主从同步第15讲 solr之Facet第16讲 solr之FacetPivot第17讲 solr之Group第18讲 solr之...
最高版本的 solr 中文分词配置 , 小弟已经测试过了 里面的 jar 要到各官网上下载
ik4solr4.3(不再维护,未来可能删除:请去 ) solr4.3的ik分词器(改了一些smart分词算法。使用maven编译),隔壁有我写的包 支持从solr自己的环境中获取自定义词典(使用solr的ResourceLoader,只需要把字典文件...
在 Solr 8 中,为了确保系统的安全性和数据的隐私性,配置用户登录验证是非常重要的步骤。本文将详细介绍如何对手动配置 Solr 8 的用户登录验证。 首先,我们需要了解 Solr 的安全组件——Jetty 容器。Solr 默认...
1. 配置Solr服务器:安装Solr,设置主从复制策略,确保索引数据能够在主从节点之间实时同步。 2. 使用Solrj进行索引构建:编写Java代码,利用Solrj的API将数据导入Solr索引库,支持批量导入和增量导入。 3. 创建...
4. 启动定时任务,设置同步频率,这可能涉及到修改Solr的配置或者使用Java代码来实现。 总的来说,这个压缩包提供了一套完整的解决方案,帮助用户实现在Solr 7.7.2中定时从MySQL数据库自动同步数据,并且支持基本的...
[root@master ~]# cp /usr/solr-4.5.1/dist/solr-4.3.war /usr/apache-tomcat-7.0.42/webapps/solr.war ``` 然后,我们需要创建 Solr 的 home 目录: ``` [root@master ~]# mkdir /usr/apache-tomcat-7.0.42/webapps...
【Solr入门配置说明】 Solr,全称为Apache Solr,是一个开源的、基于Java的企业级搜索应用服务器。它提供了一种高效、可扩展的全文检索能力,支持多种数据源,如XML、JSON等,通过HTTP接口进行通信,使得开发者能够...
solr4.3.0中所有的jar包,稳定,快速搜索引擎
7. 更新 Solr 配置文件 `solrconfig.xml`,设置数据目录为刚才创建的数据目录,替换 `${solr.data.dir:}</dataDir>` 为 `${solr.data.dir:D:/data/solr/collection1/data}</dataDir>`。 8. 设置 Solr 的 `home` ...
在Solr6中配置mmseg4j是为了实现中文分词,从而提升搜索效果。mmseg4j是基于Java的一个高性能中文分词库,它提供了多种分词算法,如最长匹配、最短路径等,以满足不同的分词需求。 首先,我们需要理解Solr6的基本...
solr详细配置教程与solrj的使用
本篇文章将深入探讨在Solr5中配置中文分词的过程。 首先,我们要了解的是分词器(Analyzer)。在Solr中,Analyzer是处理文本输入的组件,它负责将输入的文本转换为可搜索的术语。对于中文,我们需要一个能理解并...