#Redis
Redis集群
Cluster模式是Redis的一种高级集群模式,它通过数据分片和分布式存储实现了负载均衡和高可用性。在Cluster模式下,Redis将所有的键值对数据分散在多个节点上。每个节点负责一部分数据,称为槽位。通过对数据的分片,Cluster模式可以突破单节点的内存限制,实现更大规模的数据存储
Redis哨兵
此前,我们非常依赖主服务器,因为所有的写命令都首先会给主服务器,那如果主服务器死掉,其它从服务器该怎么办?顶替!选择一个从服务器来担任主服务器的职责。Redis 提供哨兵机制(哨兵其实是一个运行在特殊模式下的 Redis 进程,所以它也是一个节点),它会检测主节点是否存活,如果发现主节点挂掉,就会选举一个从节点切换为主节点,并且把新主节点的相关信息通知给从节点和客户端。总结就是主要负责三件事情:监控、选主、通知
Redis主从复制
之前介绍 Redis 持久化是针对单台主机,如果这台主机死掉,不能对外提供服务,那持久化策略也没有发挥的余地。为了避免这种情况,那就需要能够有多台 Redis 服务器,哪怕其中一台死掉,再选择一个允许正常的 Redis 服务器顶上,继续正常服务。但我们必须要保证数据的一致性,所以引出接下来介绍的主从复制
数据库和缓存如何保持一致性?
先更新数据库,再删除缓存也是会出现数据不一致性的问题,但是在实际中,这个问题出现的概率并不高。因为缓存的写入通常要远远快于数据库的写入
缓存雪崩、缓存击穿和缓存穿透
Redis 缓存的数据来源于 MySQL数据库,前者作用于内存,后者作用于磁盘,内存访问比磁盘快很多。题目中的缓存失败情况从这两个数据库展开讨论
RDB 持久化
如果你用过虚拟机的快照,并且熟悉前面所讲的 AOF 日志,本节内容读来轻轻松松
AOF持久化
如果你有操作系统基础,AOF持久化非常好理解