作者:随之爱_629 | 来源:互联网 | 2023-09-10 16:31
本篇文章来说说Redis 的噩梦–阻塞。
Redis 是单线程架构,所有读写操作都是一条主线程完成的。如果出现了阻塞,哪怕是很短的时间,也是噩梦。
发现阻塞
- 客户端是最先感知阻塞等Redis的超时行为
- 加入日志监控报警工具
- 对Redis 进程和机器做全面监控(如命令耗时、慢查询、持久化阻塞、连接拒绝、CPU/内存/磁盘/网络使用过载等)
内在原因
- API 或数据结构使用不合理
- CPU 饱和问题
- 持久化相关阻塞
外在原因
- CPU 竞争
- 内存交换
- 网络问题(复杂)