javasolr集群架构

Posted IT技术大神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javasolr集群架构相关的知识,希望对你有一定的参考价值。


什么是SolrCloud


     SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求。

      SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心。

     它有几个特色功能:

     1)集中式的配置信息

     2)自动容错

     3)近实时搜索

     4)查询时自动负载均衡



Solr集群的系统架构



2.1. 物理结构


     三个Solr实例( 每个实例包括两个Core),组成一个SolrCloud。


2.2.  逻辑结构


      索引集合包括两个Shard(shard1和shard2),shard1和shard2分别由三个Core组成,其中一个Leader两个Replication,Leader是由zookeeper选举产生,zookeeper控制每个shard上三个Core的索引数据一致,解决高可用问题。

     用户发起索引请求分别从shard1和shard2上获取,解决高并发问题。


2.2.1. collection


     Collection在SolrCloud集群中是一个逻辑意义上的完整的索引结构。它常常被划分为一个或多个Shard(分片),它们使用相同的配置信息。

     比如:针对商品信息搜索可以创建一个collection。

 collection=shard1+shard2+....+shardX


2.2.2.Core


每个Core是Solr中一个独立运行单位,提供 索引和搜索服务。一个shard需要由一个Core或多个Core组成。由于collection由多个shard组成所以collection一般由多个core组成。


2.2.4. Shard


Collection的逻辑分片。每个Shard被化成一个或者多个replication,通过选举确定哪个是Leader。


2.3. 需要实现的solr集群架构


Zookeeper作为集群的管理工具。

1、集群管理:容错、负载均衡。

2、配置文件的集中管理

3、集群的入口

 

需要实现zookeeper 高可用。需要搭建集群。建议是奇数节点。需要三个zookeeper服务器。

 

搭建solr集群需要7台服务器。

 

搭建伪分布式:

需要三个zookeeper节点

需要四个tomcat节点。

 

建议虚拟机的内存1G以上。


— e n d —

IT技术大神 小白到大神的进阶之路


以上是关于javasolr集群架构的主要内容,如果未能解决你的问题,请参考以下文章

java精品高级架构课,RocketMQ中间件,Mysql分布式集群,服务架构,运维架构视频教程

java架构师高性能高并发高可用高可扩展性能优化集群电商网站架构

RabbitMQ 的4种集群架构

2017最新技术java高级架构千万高并发分布式集群架构师入门到精通视频教程

架构设计基础:单服务.集群.分布式,基本区别和联系

Redis集群高可用架构