说明:本文纯转载,如有需要请联系我
Redis集群主从复制
Redis高可用集群-哨兵模式(Redis-Sentinel)
Redis创建高可用集群教程【Windows环境】
Redis哨兵、复制、集群的设计原理与区别
主要区别:
主从复制是为了数据备份,哨兵是为了高可用,Redis主服务器挂了哨兵可以切换,集群则是因为单实例能力有限,搞多个分散压力,简短总结如下:
主从模式:备份数据、负载均衡,一个Master可以有多个Slaves。
sentinel发现master挂了后,就会从slave中重新选举一个master。
cluster是为了解决单机Redis容量有限的问题,将数据按一定的规则分配到多台机器。
sentinel着眼于高可用,Cluster提高并发量。
1.主从模式:读写分离,备份,一个Master可以有多个Slaves。
2.哨兵sentinel:监控,自动转移,哨兵发现主服务器挂了后,就会从slave中重新选举一个主服务器。
3.集群:为了解决单机Redis容量有限的问题,将数据按一定的规则分配到多台机器,内存/QPS不受限于单机,可受益于分布式集群高扩展性。
Sentinal.conf
#当前Sentinal接收所有远程连接,少了这个,在不同服务器部署哨兵的时候,哨兵的通讯可能存在问题
#会导致主机选举失败
bind 0.0.0.0
#当前Sentinel服务运行的端口
port 26380
# 哨兵监听的主服务器
sentinel monitor mymaster 82.221.2.42 6379 2
# 3s内mymaster无响应,则认为mymaster宕机了
sentinel down-after-milliseconds mymaster 3000
#如果10秒后,mysater仍没启动过来,则启动failover
sentinel failover-timeout mymaster 10000
# 执行故障转移时, 最多有1个从服务器同时对新的主服务器进行同步
sentinel parallel-syncs mymaster 1
将sentinel做成windows服务
cd C:\Program Files\Redis\
redis-server --service-install sentinel.conf --sentinel --service-name RedisSentinel --port 26380
redis-server --service-start --service-name Redis26380
pause
将redis做成windows服务
cd C:\Program Files\Redis\
redis-server --service-install redis.windows-service.conf --service-name Redis --port 6379
redis-server --service-start --service-name Redis
pause
服务删除
sc delete redis