集群分布式

集群:就是多个节点干相同的事情
特点:高可用性\可扩展性

集群应该具备的两大能力:1.负载均衡2.错误恢复

分布式:多个节点协调完成一件事,但各个节点实现不同的功能

zookeeper作为注册中心,如果发生单点故障将造成整个网站的瘫痪,所以要搭建zookeeper集群,以实现高可用.

zookeeper集群至少3台,因为超过半数才能选出leader,一台故障不会影响集群的工作,超过半数故障,集群将停止工作,恢复过半数集群将重新运行.leader故障会重新选出新的leader.

搭建了zookeeper集群后,注册中心的地址就不是一台zookeeper地址了,而是多台
<dubbo:registry
protocol=“zookeeper” address=“192.168.25.140:2181,192.168.25.140:2182,192.168.25.140:2183”>
</dubbo:registry>

搭建solrCloud的原因 解决单机版solr单点故障问题,性能不高问题,存储能力不足问题

搭建solr集群将solr的配置文件交给zookeeper管理并设置每个solr服务器(tomcat)的JAVA_OPTS="-DzkHost=192.168.25.140:2181,192.168.25.140:2182,192.168.25.140:2183".这样几个solr就同时找到zookeeper而成为一个集群了

一个zookeeper也可以管理solr集群,但是3个zookeeper搭建成zookeeper集群就会实现高可用,除了solr集群,zookeeper集群可以用来管理其它集群,以及作为dubbo的注册中心

redis集群,redis-cluster redis3.0之后官方给出的集群解决方案
采用的是无中心结构,每个节点都和其它所有节点连接,内部使用二进制协议,优化传输速度和带宽

客户端和redis节点之间直连,不需要中间代理层,连接集群中任意一个节点即可。

solr启动报错了怎么办?
1.查看tomcat日志
2.看看刚才改的地方哪里错了
3.百度
4.配置log4j配置文件,查看具体报什么错误(建议以日志优先,不要乱检查,浪费时间,或者刚才改了什么查一查也是可以的)

redis集群中内置了2的14次方(16384个)个哈希槽,会大致均匀的映射到每个节点,在放入数据的时候会先对key用crc16算法算出结果对16384取余数,余数和哪个槽的值相等就放到哪个节点上

1.redis的安装首先要进行gcc的安装,因为redis是c语言开发的,安装redis需要C语言的编译环境
yum install gcc-c++

2.使用yum 命令安装ruby 因为需要使用ruby脚本来实现集群的搭建
yum install ruby
yum install rubygems

3.将redis源码包上传至linux系统,解压redis源码包
4.编译redis源码 make
5.安装各个redis实例到各自的文件夹下
make install PREFIX=/usr/local/redis-cluster/redis-1
6.将 /redis-3.0.0/redis.conf 复制到redis下的bin目录下

配置集群
1.修改每个redis节点的端口号 可以改为后台运行 开启集群功能
2.启动每一个实例
3.上传redis-3.0.0.gem ,安装 ruby用于搭建redis集群的脚本。
4.使用 ruby 脚本搭建集群。
进入redis源码目录中的src目录(有redis-trib.rb脚本) 执行下面的命令
./redis-trib.rb create --replicas 1 192.168.25.140:7001 192.168.25.140:7002 192.168.25.140:7003
192.168.25.140:7004 192.168.25.140:7005 192.168.25.140:7006
然后redis集群就完成了hash槽的自动分配
redis集群搭建成功

进入redis客户端
redis-cli -h 主机ip -p 端口(集群中任意端口) -c(集群的意思)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值