当前位置: 首页 > article >正文

Redis相关整理

一、Redis核心原理

1.1、Redis 单线程为什么还能这么快?

因为它所有的数据都在内存中,所有的运算都是内存级别的运算,而且单线程避免了多线程的切换性能损耗问题。正因为 Redis 是单线程,所以要小心使用 Redis 指令,对于那些耗时的指令(比如 keys),一定要谨慎使用,一不小心就可能会导致 Redis 卡顿。

1.2、Redis 单线程如何处理那么多的并发客户端连接?

Redis的IO多路复用:redis利用epoll来实现IO多路复用,将连接信息和事件放到队列中,依次放到 文件事件分派器,事件分派器将事件分发给事件处理器。 Nginx也是采用IO多路复用原理解决C10K问题【c10k问题指的是服务器如何支持10k并发连接】。

1.3、缓存过期清理

Redis对于过期键有三种清除策略:

1)、被动删除:当读/写一个已经过期的key时,会触发惰性删除策略,直接删除掉这个过期key。

2)、主动删除:由于惰性删除策略无法保证冷数据被及时删掉,所以Redis会定期主动淘汰一批已过期的key。

3)、当前已用内存超过maxmemory限定时,触发主动清理策略。

当REDIS运行在主从模式时,只有主结点才会执行被动和主动这两种过期删除策略,然后把删除 操作”del key”同步到从结点。

第三种策略的情况如下: 当前已用内存超过maxmemory限定时


http://www.kler.cn/a/14459.html

相关文章:

  • RabbitMQ之Work Queues
  • sequelize + Nodejs + MySQL 的简单用法
  • 2023网络搭建项目改革
  • 八、vue_options之computed、watch属性选项
  • 输电线路在线监拍设备的国网协议对接方案
  • 【pan-sharpening 攻击:目标检测】
  • Node.js -- 使用Express写接口
  • Dockerfile镜像LNMP的实战
  • CTA进网测试《5G消息 终端测试方法》标准依据:YDT 3958-2021
  • 【华为OD机试真题】硬件产品销售方案(javapythonC++)100%通过率 超详细代码注释
  • 银行数字化转型导师坚鹏:银行数字化创新应用与案例分析
  • 【数据结构第四章】- 串的模式匹配算法(BF 算法和 KMP 算法/用 C 语言实现)
  • Nginx +Tomcat 负载均衡,动静分离集群
  • navicat 远程连接oracle数据库ORA-12170及ORA-28547问题
  • Speech and Language Processing-之文本规范化
  • 工贸企业重大事故隐患判定标准,自2023年5月15日起施行
  • 后端开发常犯的问题(Java版)
  • Python VS C(上篇)
  • IPTV系统架构的分析与研究
  • 部署 Exsi 7.0.3