发明名称 一种基于Zookeeper实现多个Solr Shards自动扩展与切换的方法
摘要 一种基于Zookeeper实现多个SolrShards自动扩展与切换的方法。当数据量比较大时,利用SolrSharding作为扩展策略,但当多个Shards当中的某一个宕掉时,整个服务将无法使用。本文撰写的方法就是对每一个活动的Shards都在Zookeeper上注册,应用程序维护一个Zookeeper上活动节点的列表并监听Zookeeper的消息,一旦有新的Shard加入或者有Shard宕掉,该列表会相应变化,在查询请求Solr服务时根据该列表,获取活动的Shards进行查询,实现了SolrShards的自动扩展,避免了因为某一个Shard宕掉致使搜索服务无法工作的情况,也提供了自动扩展的功能,提高工作效率。
申请公布号 CN102591934A 申请公布日期 2012.07.18
申请号 CN201110440391.5 申请日期 2011.12.23
申请人 国网电力科学研究院 发明人 杨佩;朱力鹏;饶玮;王刚;胡斌
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 南京知识律师事务所 32207 代理人 汪旭东
主权项 一种基于Zookeeper实现多个Solr Shards自动扩展与切换的方法,其特征在于,包括以下步骤:注册节点,修改Solr服务,使Solr服务在启动时自动将自身地址注册为Zookeeper节点;修改应用程序,在启动时开始监听Zookeeper消息,获取在Zookeeper中注册的Shards节点;维护Shards列表,监听程序维护一个活动的Shards列表,在收到Zookeeper节点变动的消息时,重新生成Shards列表;生成请求地址,修改应用程序,在查询时要据Shards列表生成所请求的Solr服务地址。
地址 210003 江苏省南京市鼓楼区南瑞路8号