1. 3.1 Redis线程模型historical

    1. Redis的Reactor模型 - 由四部分组成:多个socket、IO多路复用、文件事件分派器、事件处理器。 - 其中文件事件分派器消费队列是单线程的,所以Redis才叫单线程模型 - redis server打开了一个server socket监听客户端链接,并把这个socket注册到IO

  2. 3.2 Redis并发竞争问题historical

    1. 并发竞争问题是什么 假设price初始值为10,有两个连接需要对其执行+10操作,正确的结果应该是30 1. 连接1读取price为10 2. 连接2读取price为10 3. 连接1对price+10为20,写回 4. 连接2对price+10为20,写回 如上,最后的结果为20而不是30,

  3. 3.3 Redis慢查询historical

    1. Redis执行命令流程 - client发送命令给服务器 - 服务器将命令排队 - 服务器执行命令 - 慢查询统计的就是这个时间 - 服务器返回结果 2. 使用 2.1. 记录慢查询语句 2.2. 慢查询命令 2.3. 分析慢查询原因 - Redis bigkey.md 3. 实现 存储在内存

  4. 3.4 Redis阻塞historical

    1. 什么是Redis阻塞 - redis需要很长时间才能响应客户端请求 2. 为什么会发生阻塞 本质上是因为redis是单线程架构,命令执行在这个线程中完成 3. 如何发现阻塞 - 业务方的redis客户端连接redis服务器超时,触发监控告警 4. 原因分析 4.1. 内在 4.1.1. 使用了

  5. 3.5 Redis bigkeyhistorical

    1. 什么是big key - 针对value来说 - string类型:一般认为超过10KB - 其他类型:元素个数过多 2. big key的危害 - 超时阻塞:操作big key比较耗时 - 内存空间分配不均匀:比如redis cluster模式之下 - 大key读写瓶颈在CPU还是带宽?带宽

  6. 3.6 Redis hotkeyhistorical

    1. 什么是Redis hot key 某个key读写QPS超过了Redis单机QPS瓶颈,并且由于是一个key,无法用Redis Cluster分担压力 2. 如何发现Redis hot key - 业务服务metrics打点统计上报 - Redis proxy收集信息 每秒访问超过1W次的算作热