Replication 配置之 replicateAfter

该参数用于指定在发生了某些事情后会触发索引同步,这些事情是发生在主服务器上的,包括 commit、optimize 和 startup,也就是在提交、优化索引,或者启用索引库时,会去触发索引同步。该参数可以配置多次,即多个事件都可以触发索引同步,如下所示:

<str name="replicateAfter">startup</str>
<str name="replicateAfter">commit</str>
<str name="replicateAfter">optimize</str>

这样在启动、提交和优化都会促发索引同步。

solr 伸缩性和分布式介绍

分布式解决的问题:
当搜索执行的时间太长,或者索引太大,此时要考虑使用 solr 的分布式了。solr 分布式中,将一个大的索引分成几个小的索引(shards,分片),放在不同的机器上。当执行搜索时,将查询划分成多个子查询,在不同机器的索引库中执行搜索,然后将查询结果合并。这个拆分查询和合并结果的过程对用户是透明了。
索引复制解决的问题:
  • 当单机的查询性能不济时,可以考虑复制出多台索引来分别承担压力,如做一个全国性的搜索,可以将索引库复制30来个,每个省分一个,每个省请求过来时,分别在自己省所分配的索引库中进行搜索
  • 将索引的读写分离,也可以很好的提供性能。由一个负责写索引,然后同步到其他索引,其他索引只读,仅提供搜索。
  • 备份索引,详见利用 Replication Handler 备份索引

Copyright © All Rights Reserved · Green Hope Theme by Sivan & schiy · Proudly powered by WordPress