SolrReplication 试用

2019-03-27 01:02|来源: 网路

Solr 1.4 版(未发布)开始有 SolrReplication 的东西,它是分布式复制组件。在 Solr 1.4 以下的版本完全靠 solr.home/bin 目录下的脚本来完成子机从主机复制索引文件。造成了平台有关了(只能在 unix 类操作系统下使用)。windows 平台下基本没戏(排除自己写复制的细节)。Solr 1.4 引进 SolrReplication 非常不错,这样 windows 平台下有福了,同时还提供 HTTP 的 API,可以方便做一些复杂的处理。

Solr 1.4 主要特性:

  • 复制不需要额外的脚本。
  • 仅仅在 solrconfig.xml 配置就行。
  • 同时还可以复制配置文件,如:schema.xml。
  • 使用相同的配置跨平台地工作。
  • 不依赖操作系统的硬链接
  • 紧密集成在 Solr 中,有管理界面、有足够的 api 控制复制的细节。

安装并试用:

到 nightly 下载:http://people.apache.org/builds/lucene/solr/nightly/,如我下载的是 solr-2009-07-15.zip。比较大 150 M 左右。

解压,结构如 F:\solr-2009-07-15\apache-solr-nightly\example。为了下面的解说把这目录称为“example.home”

复制 example.home/solr 目录为 example.home/solr-slave 作为子机的 solr。

修改 example.home/solr/conf/solrconfig.xml 配置,把下面的内容去掉注释。

  1. <requestHandler name="/replication" class="solr.ReplicationHandler" >  
  2.     <lst name="master">  
  3.         <str name="replicateAfter">commit</str>  
  4.          <str name="confFiles">schema.xml,stopwords.txt</str>  
  5.     </lst>  
  6. </requestHandler>  

修改slave 的 example.home/solr-slave/conf/solrconfig.xml 配置,把下面的内容去掉注释,看起来这样。

  1. <requestHandler name="/replication" class="solr.ReplicationHandler">  
  2.     <lst name="slave">  
  3.         <str name="masterUrl">http://localhost:8080/solr/replication</str>  
  4.         <str name="pollInterval">00:00:60</str>  
  5.      </lst>  
  6. </requestHandler>  

把两个 solr、solr-slave 安装到 tomat,安装与以前一样,请看:Solr 使用入门介绍,以搜索论坛帖子为示例

我这里用 solr.xml、solr-slave.xml 放到 F:\apache-tomcat-6.0.18\conf\Catalina\localhost 目录下。

安装好后到 example.home/exampledocs 目录提交数据做索引,上面给出的博文也讲到怎么提交数据给 solr。

提交完后,可以在 example.home/solr/data/index 看到索引文件。过一分钟,可以在 example.home/solr-slave/data/index 也索引文件。说明索引复制成功。

主索引的状态界面:http://localhost:8080/solr/admin/replication/index.jsp

master index face

master index face

子索引的状态界面:http://localhost:8080/solr-slave/admin/replication/index.jsp,它会不停地刷新状态。

slave index face

slave index face

主索引相关的 HTTP 管理 API:

子索引相关的 HTTP 管理 API:

有了这些复制索引的 HTTP api,做一些细节的控制就好多了。期待正式发布……


转自:http://www.cnblogs.com/wycg1984/archive/2009/09/16/1567640

相关问答

更多
  • 教育学、教育心理学
  • 用手机开通会员会72小时后记费。如果取消咯就不用消费咯。 这样往复的开通关闭还可以,维持会员,就是等级升的满。
  • 直接用破解版就可以了。 1.启动安装程序后,这里是选择软件的安装路径,这个非常重要因为之后的汉化过程需要知道路径。 2.接着就是选择软件是否创建快捷方式和关联文件格式,这个根据自己的需求进行选择。 3.信息确认无误后,等待软件自动安装即可。 4.安装完成后,将破解补丁复制到软件安装目录中的lib文件夹中,打开后就是中文界面了。 5.由于软件已经集成了破解补丁,启动就可以直接进行使用了。 intellij idea(IDEA) 2017:http://www.3322.cc/soft/14979.html
  • 1. 性能方面,a,3a,5a,10a....个并发时服务器的性能,CPU,处理时间等,测出一个基线数据,并使用最优的那个并发作为系统的性能最大指标 2. 压力方面, 压力和负载两个概念我经常搞混,不过不影响使用,就是一个是使用几个并发一直保持有业务运行状态下,长时间运行,监控系统的响应时间,CPU,内存,网卡,磁盘读写等数据,一个是使用N倍的最大指标,进行压测,看超过系统处理能力后,系统的表现能力. 3. 负载测试 4. 分流方面:如配置1:1,1:10等 5. 故障方面: 包括集群中的故障隔离,故障恢复 ...
  • 测试用例就是test case,是为了系统地测试一个功能而由测试工程师写下的文档或脚本。 写下来的目的。。。咳咳,写下来就是为了记录啊,并加以完善,因为测试一个功能往往不是走一遍就OK的,需要反复的改,反复的测,直到功能可以提交给客户。
  • 测试用例的设计需要从很多角度考虑的啊,首先你的用例来源于需求分析,那么项目或者产品是否有功能性及非功能性需求呢。比如说系统可用性需求,网络带宽需求,系统响应性能需求等等。如果存在这些需求,那么用例设计时就需要考虑这些角度。 其次功能性需求在设计用例时也需要考虑诸如大用户量并发的情况之类的。 再次,测试用例包含容错用例。 最后,测试用例编写的同时,是有等级区分的,有的用例是关键流程或者功能点,那么等级就高;有的用例很少使用,就会低。这样便于你进行回归或者重复使用。 希望对你有所帮助。
  • 试用当然首选百优宝啦,百优宝所有试用产品,都是由天猫,京东,直接供货,质量信誉绝对可以放心。
  • 其他的第三方都是骗钱的 花钱的话一大堆平台可以试用 但是没有什么效果
  • 当然是试客联盟啦 国内第一大的试用网站
  • 为了避免资源泄漏,最好在finally块中关闭资源对象(如FileOutputStream等)。 原因是即使异常,finally块也会被执行,资源永远不会被泄露或转义 。 你的代码中最重要的是你没有关闭finally块中的资源,即它们可以逃脱并产生泄漏。 try-with-resources不是关闭finally块中的resoruces,而是关闭任何资源类(实现AutoCloseable )对象的语法糖 (这在Java1.7中引入) 您可以使用内联注释为代码应用try-with-resources概念,如下 ...