Redis框架
Master.TJ
https://github.com/fengruotj
展开
-
Redis:主从复制原理
1. 前言Redis是一个高性能的K-V内存数据库。对于Redis来说,当访问读请求的并发量增加的时候,Redis主服务器会成为一个性能瓶颈。为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步。下图为级联结构。2. Redis主从复制2.1 全量复制当Slave机器连接到Redis集群中时,...原创 2019-04-03 18:12:06 · 398 阅读 · 0 评论 -
Redis:哨兵模式(Sentinel)原理
1. 前言Redis主从复制模式不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。Redis哨兵模式就解决了Redis主从复制模式不具备容错和恢复的功能问题。Sentinel(哨兵)进程是用于监控redis集群中Master主服务器工作的状态,在Master主服务器发生故障的时候,可以实现Master和Slave服务器的切换,保...原创 2019-05-08 22:08:35 · 1733 阅读 · 0 评论 -
Redis:Redis集群模式(Cluster)原理
1.前言由于Redis主从复制模式和Redis哨兵模式采用的都是复制Master节点的数据,实现读写分离。但是这种设计存在一个严重的问题,它没有真正意义上实现数据分片。两个模式都有一个问题,不能水平扩容,并且这两个模式的高可用特性都会受到Master主节点内存的限制。Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。所有Redis集群模式就是用来解决这个问题。2. Redi...原创 2019-05-09 00:47:43 · 1645 阅读 · 0 评论 -
Redis:一致性Hash算法
1. 前言在Redis 集群模式Cluster中,Redis采用的是分片Sharding的方式,也就是将数据采用一定的分区策略,分发到相应的集群节点中。但是我们使用上述HASH算法进行缓存时,会出现一些缺陷,主要体现在服务器数量变动的时候,所有缓存的位置都要发生改变!具体来讲就是说第一当缓存服务器数量发生变化时,会引起缓存的雪崩,可能会引起整体系统压力过大而崩溃(大量缓存同一时间失效)。第二当缓...原创 2019-05-09 09:20:15 · 14854 阅读 · 12 评论