扫码阅读
手机扫码阅读
深入Redis内幕:通信协议、内存回收与淘汰策略
176 2024-07-18
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
文章来源:
springboot葵花宝典
扫码关注公众号
深入Redis内幕:通信协议、内存回收与淘汰策略
1. RESP协议简介
Redis使用的通信协议为RESP(Redis Serialization Protocol),它通过首字节区分数据类型。RESP协议从Redis 1.2版本引入,并在Redis 6.0版本中升级到RESP3,增加了对更多数据类型的支持以及客户端缓存。
2. Redis通信协议-基于Socket自定义Redis的客户端
利用TCP通信,可以使用Socket模拟Redis客户端与服务端的交互。示例代码展示了一个简单的Redis客户端,如何建立连接、发送请求和关闭资源。
3. Redis内存回收-过期key处理
Redis内存回收策略包括内存过期策略、惰性删除和周期删除。惰性删除在访问key时检查过期并删除,而周期删除则定期抽样检查并删除过期key。周期删除分为SLOW模式和FAST模式,根据不同的规则执行。
4. Redis内存回收-内存淘汰策略
内存淘汰策略是当Redis达到内存上限时,根据设定的规则选择key进行删除。共有8种不同的淘汰策略,包括noeviction、volatile-ttl、allkeys-random、volatile-random、allkeys-lru、volatile-lru、allkeys-lfu、volatile-lfu,它们基于不同的原理对key进行淘汰。
想要了解更多内容?
文章来源:
springboot葵花宝典
扫码关注公众号
springboot葵花宝典的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线