面试问题redis有哪些集群方案Redis官方集群方案 Redis Cluster Redis Cluster是一种服务器Sharding技术 , 0版本开始正式提供 。Redis Cluster中,Sharding采用slot(槽)的概念,一共分成16384个槽,这有点儿类pre sharding思路 。
Proxy:现在很多主流的Redis集群都会使用Proxy方式 , 例如早已开源的Codis 。这种方案有很多优点,因为支持原声redis协议,所以客户端不需要升级 , 对业务比较友好 。并且升级相对平滑,可以起多个Proxy后,逐个进行升级 。
以Java语言为例,简单说一下 , 除了一些公司自主开发的集群外 。
Redis集群模式1-主从复制+哨兵机制传统的Redis集群采用的主从复制模式,一般为一主多从,主节点有读写权限 , 但是从节点只有读的权限 。主节点会定期将数据同步到从节点中,保证数据一致性的问题 。
哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程 , 作为进程,它会独立运行 。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例 。
因此,主从模式的一个缺点,就在于无法实现自动化地故障恢复。Redis后来引入了哨兵机制,哨兵机制大大提升了系统的高可用性 。哨兵,就是站岗放哨的,时刻监控周围的一举一动,在第一时间发现敌情并发出及时的警报 。
Redis 高可用的主要有三种模式: 主从模式, 哨兵模式和集群模式 。Redis 提供了 Redis 提供了复制(replication)功能,当一台 redis 数据库中的数据发生了变化,这个变化会被自动地同步到其他的 redis 机器上去 。
Redis集群方案应该怎么做1、为了增加集群的可访问性,官方推荐的方案是将node配置成主从结构,即一个master主节点,挂n个slave从节点 。如果主节点失效,redis cluster会根据选举算法从slave节点中选择一个上升为master节点,整个集群继续对外提供服务 。
2、Redis集群,要保证16384个槽对应的node都正常工作,如果某个node发生故障,那它负责的slots也就失效,整个集群将不能工作 。为了增加集群的可访问性,官方推荐的方案是将node配置成主从结构,即一个master主节点,挂n个slave从节点 。
3、以下是一个简单的步骤: 创建一个 ConfigMap,其中包含 Redis 配置文件 。创建一个 StatefulSet,其中包含 3 个副本的 Redis Pod 。创建一个 PersistentVolumeClaim,用于存储 Redis 数据 。
4、使用Jedis带的客户端分片ShardedJedisPool类 。使用代理进行分片twemproxy,连接代理可以使用Jedis类(单链接)和JedisPool类(多链接) 。
高性能高并发网站架构,教你搭建Redis5缓存集群1、redis-cluster投票:容错 , 投票过程是集群中所有master参与,如果半数以上master节点与master节点通信超过(cluster-node-timeout) , 认为当前master节点挂掉 。
2、redis高可用:如果你做主从架构部署,其实就是加上哨兵就可以了,就可以实现,任何一个实例宕机,自动会进行主备切换 。
3、redis.conf 配置文件里 bind 0.0.0.0 设置外部访问, requirepass xxxx 设置密码 。redis高可用方案有两种: 常用搭建方案为1主1从或1主2从+3哨兵监控主节点,以及3主3从6节点集群 。
4、Sentinel : redis 自带的主从切换工具 , 我们通过 sentinel 实现集群高可用 。客户端( Smart Client ):客户端通过约定查找 redis 实例在 ZooKeeper 中写入的地址 。
5、redis的集群模式为了解决系统的横向扩展以及海量数据的存储问题,如果你的数据量很大,那么就可以用redis cluster 。
redis集群方案有哪些基于以上,Redis集群方案显得尤为重要 。通常有3个途径:官方Redis Cluster;通过Proxy分片;客户端分片(Smart Client) 。以上三种方案各有利弊 。
Redis官方集群方案 Redis Cluster Redis Cluster是一种服务器Sharding技术,0版本开始正式提供 。Redis Cluster中 , Sharding采用slot(槽)的概念,一共分成16384个槽 , 这有点儿类pre sharding思路 。
使用Jedis带的客户端分片ShardedJedisPool类 。使用代理进行分片twemproxy,连接代理可以使用Jedis类(单链接)和JedisPool类(多链接) 。
redis-cluster投票:容错,投票过程是集群中所有master参与,如果半数以上master节点与master节点通信超过(cluster-node-timeout),认为当前master节点挂掉 。
玩转Redis的高可用(主从、哨兵、集群)1、Redis的哨兵机制就是解决主从复制存在缺陷(选举问题),解决问题保证我们的Redis高可用,实现自动化故障发现与故障转移 。要使用哨兵机制 , 除了启动Redis服务以外,还要启动哨兵服务来进行监控,会介绍详细步骤 。
2、哨兵模式解决了故障不能自动恢复的问题,但仍存在的问题是:Redis较难支持在线扩容,对于集群,容量达到上限时在线 扩容会变得很复杂。
3、原理:当主节点出现故障时,由Redis Sentinel自动完成故障发现和转移,并通知应用方 , 实现高可用性 。
【redis集群有哪几种 redis集群有几种模式】4、redis哨兵和集群不能同时使用,Redis哨兵和集群是两种不同的Redis高可用方案 。
推荐阅读
- 以下哪些数据类型是redis支持的 什么样数据适合放入redis
- 如何评价e宝大表哥服务器的性能? e宝大表哥服务器怎么样
- 如何在服务器上查看用户的名称? 怎么查看服务器上的用户名
- 如何在腾讯云服务器上使用数据库? 腾讯云服务器怎么用数据库
- 如何评价e宝服务器的性能? e宝服务器怎么样
- 如何在服务器上查看用户? 怎么查看服务器上的用户
- 如何利用腾讯云服务器赚钱? 腾讯云服务器怎么用来赚钱