![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
缓存
文章平均质量分 95
缓存
congnai
这个作者很懒,什么都没留下…
展开
-
04-redis
其实我们面试被问到这样的源码问题,大家肯定不会对各种数据类型有这么高的熟悉度(通过源码去掌握),我给大家的建议是记住以下的几点即可(达到面试的要求):1、除了String,其他的数据类型都有2种及以上的实现。2、双向链表不用多说,就是方便两头遍历。哈希表也不用多说,也就是类似于HashMap(数组+链表)。3、压缩列表实际上类似于一个数组,压缩列表在表头有三个字段 zlbytes、zltail 和 zllen,分别表示列表长度、列表尾的偏移量和列表中的 entry 个数。原创 2023-08-29 16:18:28 · 52 阅读 · 1 评论 -
03-redis
Redlock 只有建立在「时钟正确」的前提下,才能正常工作,如果你可以保证这个前提,那么可以拿来使用。但是时钟偏移在现实中是存在的:第一,从硬件角度来说,时钟发生偏移是时有发生,无法避免。例如,CPU 温度、机器负载、芯片材料都是有可能导致时钟发生偏移的。第二,人为错误也是很难完全避免的。所以,Redlock尽量不用它,而且它的性能不如单机版 Redis,部署成本也高,优先考虑使用主从+ 哨兵的模式 实现分布式锁(只会有很小的记录发生主从切换时的锁丢失问题)。原创 2023-08-28 21:50:46 · 45 阅读 · 1 评论 -
02-redis
出于性能和并发的要求我们在碰到需要执行耗时特别久,且结果不频繁变动的SQL,就特别适合将运行结果放入缓存。这样,后面的请求就去缓存中读取,使得请求能够迅速响应。在大并发的情况下,所有的请求直接访问数据库,数据库会出现连接异常。这个时候,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问数据库。MySQL执行SQL的并发一般是1500QPS左右,而使用高效的缓存的话,Redis可以达到10W+的QPS。原创 2023-08-27 12:54:24 · 44 阅读 · 1 评论 -
01-redis
1、哨兵模式的架构:2、什么是哨兵模式:在主从模式下(主从模式就是把上图的所有哨兵去掉),master节点负责写请求,然后异步同步给slave节点,从节点负责处理读请求。如果master宕机了,需要手动将从节点晋升为主节点,并且还要切换客户端的连接数据源。这就无法达到高可用,而通过哨兵模式就可以解决这一问题。哨兵模式是Redis的高可用方式,哨兵节点是特殊的redis服务,不提供读写服务,主要用来监控redis实例节点。原创 2023-08-26 10:13:57 · 47 阅读 · 0 评论