Redis多服务器负载均衡的实现

集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。

Redis多服务器负载均衡的实现

上图是三个主服务器,每个主服务器都有一个从服务器 ,从而组成了6个节点的负载均衡。

下面我们用实际案例来演示redis的负载均衡实现的过程:

第一步:创建6个redis配置文件

(如果redis没有安装,请参考本博客的上篇文章的介绍)

编辑文件7000.conf

port 7000
bind 127.0.0.1
daemonize yes
pidfile 7000.pid
cluster-enabled yes
cluster-config-file 7000_node.conf
cluster-node-timeout 15000
appendonly yes

其他5个文件参考上面的配置,只需要修改三处对应的数字。

Redis多服务器负载均衡的实现

第二步:启动6个redis服务

$ src/redis-server 7000.conf

Redis多服务器负载均衡的实现

第三步:执行redis-trib.rb命令,启动负载均衡

(这里需要安装ruby,本文暂略去,后面有机会再详细介绍)

$ src/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

Redis多服务器负载均衡的实现

从上图中可以看出,程序自动分配了主从服务器节点。

为了演示方便,6个节点都部署到一台机器上,实际中需要部署到不同地点的服务器中。

如果一个节点出了问题,系统会自动切换到另外一台服务器上。

第四步:客户端连接进行验证

$ src src/redis-cli -h 127.0.0.1 -c -p 7000

 Redis多服务器负载均衡的实现

ok,大功告成,从上图看出7000端口的服务器保存数据的时候,系统自动分配到7001端口的服务器中。

如果你觉得本文章对你有所帮助,请持续关注我的博客。

本文章地址:http://www.cnblogs.com/robin201711/p/8516844.html

上一篇:ISE14.7兼容性问题集锦


下一篇:深入浅出理解 TCP/IP 协议 (一)