Redis集群有几种?redis的多机数据库实现主要有以下5种:
1、主从复制
2、哨兵模式
3、Redis官方提供的Cluster集群模式(服务端)
4、Jedis sharding集群(客户端sharding)
5、 利用中间件代理,比如codis等
其中前三个为服务器端方案 后两个为客户端分区方案,类似于分表分库方案
一、主从复制(Master-Slave Replication):
实现主从复制(Master-Slave Replication)的工作原理:Slave从节点服务启动并连接到Master之后,它将主动发送一个SYNC命令。Master服务主节点收到同步命令后将启动后台存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕后,Master将传送整个数据库文件到Slave,以完成一次完全同步。而Slave从节点服务在接收到数据库文件数据之后将其存盘并加载到内存中。此后,Master主节点继续将所有已经收集到的修改命令,和新的修改命令依次传送给Slaves,Slave将在本次执行这些数据修改命令,从而达到最终的数据同步。
如果Master和Slave之间的链接出现断连现象,Slave可以自动重连Master,但是在连接成功之后,一次完全同步将被自动执行。
主从模式的优缺点
优点:
缺点:
其实redis的主从模式很简单,在实际的生产环境中是很少使用的,我也不建议在实际的生产环境中使用主从模式来提供系统的高可用性,之所以不建议使用都是由它的缺点造成的,在数据量非常大的情况,或者对系统的高可用性要求很高的情况下,主从模式也是不稳定的。
二、哨兵模式:
该模式是从Redis的2.6版本开始提供的,但是当时这个版本的模式是不稳定的,直到Redis的2.8版本以后,这个哨兵模式才稳定下来,无论是主从模式,还是哨兵模式,这两个模式都有一个问题,不能水平扩容,并且这两个模式的高可用特性都会受到Master主节点内存的限制。
Sentinel(哨兵)进程是用于监控redis集群中Master主服务器工作的状态,在Master主服务器发生故障的时候,可以实现Master和Slave服务器的切换,保证系统的高可用。
Sentinel(哨兵)进程的作用
Sentinel(哨兵)进程的工作方式
哨兵模式的优缺点
优点:
缺点:
三、Redis官方 Cluster集群模式
Redis Cluster是一种服务器Sharding技术,3.0版本开始正式提供。
集群通过分片来进行数据共享,并提供复制和故障转移功能。一个Redis集群通常由多个节点组成;最初,每个节点都是独立的,需要将独立的节点连接起来才能形成可工作的集群。
Redis中的集群分为主节点和从节点。其中主节点用于处理槽;而从节点用于复制某个主节点,并在被复制的主节点下线时,代替下线的主节点继续处理命令请求。
集群模式将在下一篇文章详细讲解。
四、Jedis sharding集群
这是一个客户端分区方案
Redis Sharding可以说是在Redis cluster出来之前业界普遍的采用方式,客户端就已经决定数据会被 存储到哪个redis 节点或者从哪个 redis 节点 读取数据。其主要思想是采用 哈希算法 将 Redis 数据的 key 进行散列,通过 hash 函数,特定的 key会 映射 到特定的 Redis 节点上。
庆幸的是,Java Redis客户端驱动Jedis已支持Redis Sharding功能,即ShardedJedis以及结合缓存池的ShardedJedisPool
Jedis的Redis Sharding实现具有如下特点:
当然,Redis Sharding这种轻量灵活方式必然在集群其它能力方面做出妥协。比如扩容,当想要增加Redis节点时,尽管采用一致性哈希,毕竟还是会有key匹配不到而丢失,这时需要键值迁移。
作为轻量级客户端sharding,处理Redis键值迁移是不现实的,这就要求应用层面允许Redis中数据丢失或从后端数据库重新加载数据。但有些时候,击穿缓存层,直接访问数据库层,会对系统访问造成很大压力。
五、利用中间件代理
客户端发送请求到一个 代理组件,代理解析客户端的数据,并将请求转发至正确的节点,最后将结果回复给客户端。
优点:简化 客户端 的分布式逻辑,客户端 透明接入,切换成本低,代理的 转发 和 存储 分离。
缺点:多了一层 代理层,加重了 架构部署复杂度 和 性能损耗。
评论时间:2022-12-02 12:25:02
5.费用低廉:根据不同云主机常用编程软件 地区及行业收费不一服务器机柜长宽高 一
评论时间:2022-09-26 00:25:02
根据赛迪顾问统计数据表明,2014年中国IDC业务整体市场规模达723.4亿元人民币,同比增长29.服务器是什么样的图片 2%;预计到2017年,我国IDC业务总市场规模有望突破千亿美元大关华为云主机安全 3.4亿元人民币,同比增长29.2%;预计到2017年,我国IDC业务总市场规模有望突破千亿美元大关,达到1641.3亿人民币,复合增长率高达24.7%
2023-12-25 22:44:35 admin
活动发布区版规2023-05-27 22:03:52 御风而行
容器、无服务器、虚拟机:安全性差...2023-05-27 20:43:39 1356
服务器宕机的造成原因和解决方法介...2023-05-27 20:43:25 qingym
别糊涂了!服务器与工作站的五大区...2023-05-27 19:08:41 小绵羊0123
科技巨头布局云端 服务器 网络硬...2023-05-27 18:17:46 姐姐的跟屁虫
钉钉因系统访问流量激增,宕机1小...2022-07-23 00:34:02 freeatom
常见ftp命令 FTP命令使用详...2022-07-21 02:17:02 ares
双硬盘组建Raid0磁盘阵列图文...2022-07-20 06:17:02 mankeung123
用友软件客户端连接不上服务器的解...2022-07-23 00:51:02 antonfxb
WebService实例2022-07-13 05:38:02 苯小孩
开发、运维不可不看的Linux调...2022-07-20 18:51:02 nightstone
如何使用Charles抓取Web...2021-12-25 05:38:01 青青子w
石家庄服务器托管并不局限于石家庄...2022-02-11 05:38:03 迷失與我
Wins服务器配置2022-03-26 05:38:03 cech
如何在webmin中设置samb...2022-04-06 05:38:02 shuiduo
如何在自己电脑架设FTP服务器2022-07-04 05:38:02 csf1906
20款开发运维必备的顶级工具,速...2022-07-15 05:38:02 gt2571
9个优秀SSD状态监控及性能优化...2022-07-19 20:17:02 dengyu0429
linux vi使用及详细介绍2022-07-20 01:00:05 激动的舌头
Linux视频教程:用户管理命令...2022-07-21 20:51:02 jessica-an
创建本地FTP站点2022-02-07 05:38:03 jasonkidd
WEB服务器配置详解2022-07-20 04:51:02 wolfssss
ACL权限-默认与递归(4)2022-07-22 15:00:05 淡水珊瑚
Linux下 Samba Ser...