分布式Redis深度历险-Sentinel】的更多相关文章

上一篇介绍了Redis的主从服务器之间是如何同步数据的.试想下,在一主一从或一主多从的结构下,如果主服务器挂了,整个集群就不可用了,单点问题并没有解决.Redis使用Sentinel解决该问题,保障集群的高可用. 如何保障集群高可用 保障集群高可用,要具备如下能力: 能监测服务器的状态,当主服务器不可用时,能及时发现 当主服务器不可用时,选择一台最合适的从服务器替代原有主服务器 存储相同数据的主服务器同一时刻只有一台 要实现上述功能,最直观的做法就是,使用一台监控服务器来监视Redis服务器的状…
本文为分布式Redis深度历险系列的第三篇,主要内容为Redis的Cluster,也就是Redis集群功能. Redis集群是Redis官方提供的分布式方案,整个集群通过将所有数据分成16384个槽来进行数据共享. 集群基础实现 一个集群由多个Redis节点组成,不同的节点通过CLUSTER MEET命令进行连接: CLUSTER MEET <ip> <port> 收到命令的节点会与命令中指定的目标节点进行握手,握手成功后目标节点会加入到集群中,看个例子,图片来自于Redis的设计…
Redis深度历险分为两个部分,单机Redis和分布式Redis. 本文为分布式Redis深度历险系列的第一篇,主要内容为Redis的复制功能. Redis的复制功能的作用和大多数分布式存储系统一样,就是为了支持主从设计,主从设计的好处有以下几点: 读写分离,提高读写性能 数据备份,减少数据丢失的风险 高可用,避免单点故障 旧版复制实现 Redis的复制主要分为同步和命令传播两个步骤: 同步可以理解为全量,是将主服务器某一时刻的所有数据全部同步到从服务器. 命令传播可以理解为增量,当主服务器数据…
高可用架构」的各位老铁们,你们好!你是否还记得上个月发布的文章中,有两篇深入讲解Redis的文章,分别是和,广大粉丝读者们对这两篇文章整体评价颇高.而我就是这两篇文章的原创作者「老钱」(钱文品),我是来自掌阅的服务端技术专家. 上周我用了蹩脚的英语向Redis作者antirez就「跳跃列表」的算法问题向他提了一个优化建议,这个优化可以显著提升zadd指令的操作性能,避免非必要的计算浪费. 几天后,antirez向我表达了感谢,作为小学生的我感到非常激动,他告诉我这个小建议在某些应用场合下足以将z…
本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取. 传送门:https://mp.weixin.qq.com/s/JzddfH-7yNudmkjT0IRL8Q   一.概述 二.数据类型STRING LIST SET HASH ZSET 三.数据结构字典 跳跃表 四.使用场景计数器 缓存 查找表 消息队列 会话缓存 分布式锁实现 其它 五.Redis 与 M…
1.redis五种数据结构 1.1 String字符串类型,对应java字符串类型 用户信息序列化后,可以用string类型存入redis中批量读写string类型,见效网络消耗数字类型的string类型,可以自增自减操作,有一个大小限制. 1.2 list类型,对应java的LinkedList,链表结构. 增删O(1),查询O(n)异步队列,一边线程塞入,一边线程取出消费.结构又和java的不同,多个ziplist组合成quicklist 1.3hash字典类型,对应java的HashMap…
[Redis深度历险]那些年Redis的数据结构 Redis端口号6379的来源 Redis的端口号是6379,但这个端口号并不是随机选择的,源于"MERZ",这个单词在手机当中的对应数字就是6379."MERZ"在Redis作者Antirez的好友圈当中代表愚蠢的意思. 数据结构 Redis的key只能是字符串,value可以是String,Hash,List,Sorted Set(Zset). String Redis的字符串是动态字符串(SDS Simple…
学习资料 https://juejin.im/book/5afc2e5f6fb9a07a9b362527 包括下面几方面的内容 基础 应用 原理 集群 拓展 源码 to be done…