![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
文章平均质量分 85
Redis
Cafebaby_
这个作者很懒,什么都没留下…
展开
-
8.哨兵集群
通过这个方式,哨兵 2 和 3 也可以建立网络连接,这样一来,哨兵集群就形成了。接着,哨兵就可以根据从库列表中的连接信息,和每个从库建立连接,并在这个连接上持续地对从库进行监控。在配置哨兵的信息时,我们只需要用到下面的这个配置项,设置主库的 IP 和端口,并没有配置其他哨兵的连接信息。这是因为,在哨兵的监控任务中,它需要对主从库都进行心跳判断,而且在主从库切换完成后,它还需要通知从库,让它们和新主库进行同步。具体的操作步骤是,客户端读取哨兵的配置文件后,可以获得哨兵的地址和端口,和哨兵建立网络连接。原创 2023-06-14 09:42:49 · 39 阅读 · 0 评论 -
7.哨兵模式
在主从复制模式下,如果从库发生故障了,客户端可以继续向主库或其他从库发送请求,进行相关的操作,但是如果主库发生故障了,那就直接会影响到从库的同步,因为从库没有相应的主库可以进行数据复制操作了。无论是写服务中断,还是从库无法进行数据同步,都是不能接受的。所以,如果主库挂了,我们就需要运行一个新主库,比如说把一个从库切换为主库,把它当成主库。原创 2023-06-14 09:42:14 · 527 阅读 · 0 评论 -
6.数据同步
AOF 和 RDB,如果 Redis 发生了宕机,它们可以分别通过回放日志和重新读入 RDB 文件的方式恢复数据,从而保证尽量少丢失数据,提升可靠性。不过,即使用了这两种方法,也依然存在服务不可用的问题。如果这个实例宕机了,它在恢复期间,是无法服务新来的数据存取请求的。那我们总说的 Redis 具有,又是什么意思呢?一是数据尽量少丢失二是服务尽量少中断。,而对于后者,Redis 的做法就是增加副本冗余量(即),将一份数据同时保存在多个实例上。原创 2023-06-14 09:43:14 · 50 阅读 · 0 评论 -
5.RDB快照
这当然不是理想的结果,所以需要有RDB,对 Redis 来说,它实现类似照片记录效果的方式,就是把某一时刻的状态以文件的形式写到磁盘上,也就是快照。虽然跟 AOF 相比,快照的恢复速度快,但是,快照的频率不好把握,如果频率太低,两次快照间一旦宕机,就可能有比较多的数据丢失。如下图所示,T1 和 T2 时刻的修改,用 AOF 日志记录,等到第二次做全量快照时,就可以清空 AOF 日志,因为此时的修改都已经记录到快照中了,恢复时就不再用日志了。在按快门前,要记着提醒朋友不要乱动,否则拍出来的照片就模糊了。原创 2023-06-14 09:40:51 · 108 阅读 · 0 评论 -
4.AOF日志
Redis用作缓存应用将会存在一个问题就是,当Redis服务器宕机后,内存中的数据会全部消失,。目前,Redis 的持久化主要有两大机制,即 AOF(Append Only File)日志和 RDB 快照。原创 2023-06-14 09:40:00 · 108 阅读 · 0 评论 -
3.高性能IO模型
以 Get 请求为例,SimpleKV 为了处理一个 Get 请求,需要监听客户端请求(bind/listen),和客户端建立连接(accept),从 socket 中读取请求(recv),解析客户端发送请求(parse),根据请求类型读取键值数据(get),最后给客户端返回结果,即向 socket 中写回数据(send)。socket() 方法会返回主动套接字,然后调用 listen() 方法,将主动套接字转化为监听套接字,此时,可以监听来自客户端的连接请求。一方面,Redis 的大部分操作在。原创 2023-06-14 09:41:13 · 53 阅读 · 0 评论 -
2.数据结构
Redis 之所以能快速操作键值对,一方面是因为 O(1) 复杂度的哈希表被广泛使用,包括 String、Hash 和 Set,它们的操作复杂度基本由哈希表决定,另一方面,Sorted Set 也采用了 O(logN) 复杂度的跳表。不过,集合类型的范围操作,因为要遍历底层数据结构,复杂度通常是 O(N)。这里,我的建议是:用其他命令来替代,例如可以用SCAN来代替,避免在 Redis 内部产生费时的全集合遍历操作。表。不过,集合类型的范围操作,因为要遍历底层数据结构,复杂度通常是 O(N)。原创 2023-06-14 09:40:35 · 42 阅读 · 0 评论 -
1.基本架构
Redis(Remote Directory server)是一款基于内存的键值型数据库,它能够高速的读/写、具有丰富的数据类型、支持持久化(AOF,RDB)存储、支持数据备份(主从复制,哨兵模式)原创 2023-06-14 09:39:57 · 37 阅读 · 0 评论