OpsDev运维相关技术分享

Redis(四):集群模式

2019-08-15  本文已影响13人  雪飘千里

集群模式

作为缓存数据库,肯定要考虑缓存服务器稳定性相关的保障机制。

持久化机制就是一种保障方式,持久化机制保证了Redis服务器重启的情况下也不会损失(或少量损失)数据,因为持久化会把内存中的数据保存到硬盘上,重启会从硬盘上加载数据

随着Redis使用场景越来越多,技术发展越来越完善,在Redis整体服务上的容错、扩容、稳定各个方面都需要不断优化,因此在Redis的集群模式上也有不同的搭建方式来应对各种需求。

总结来说,Redis集群模式有三种:

1、主从模式

为了Redis服务避免单点故障,通常的做法是将redis的数据复制到多个副本以部署在不同的服务器上,这样即使有一台服务器出现故障,其他服务器依然可以继续提供服务,为此,Redis提供了复制(replication)功能,可以实现当一台数据库的数据更新后,自动将更新的数据同步到其他数据库上。

Redis服务器分为两类:一类是主数据库(Master),另一类是从数据库(Slave);
主数据库可以进行读写操作,当写操作导致数据变化时,会自动将数据同步给从数据库。
从数据库一般是只读的,并接受主数据库同步过来的数据。
一个主数据库可以拥有多个从数据库,而一个从数据库却只能拥有一个主数据库。

image.png

2、哨兵模式

Redis提供的sentinel(哨兵)机制,通过sentinel模式启动redis后,自动监控Master/Slave的运行状态,基本原理是:心跳机制+投票裁决。

简单来说,哨兵的作用就是监控redis系统的运行状况,它的功能包括以下两个:

哨兵模式主要以下几个内容:

Redis Sentinel 是一个分布式系统,你可以在一个架构中运行多个Sentinel进程(progress)

image.png

3、Cluster集群模式

Redis Cluster是一种服务器Sharding技术,3.0版本开始正式提供,采用无中心架构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接。

image.png

Cluster集群结构特点:

上一篇 下一篇

猜你喜欢

热点阅读