大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说Redis阻塞_redis订阅发布堵塞问题,希望您对编程的造诣更进一步.
可能存在问题
- 内在原因:API或数据结构使用不合理、CPU饱和、持久化阻塞等
- 外在原因:CPU竞争、内存交换、网络问题等
问题处理:
- API或数据结构使用不合理,可能存在慢查询或者大对象:
- 发现慢查询 slowlog get {n} : 降低低算法度命令、拆分大对象
- 发现大对象 –bigkeys
- CPU饱和,Redis并发量过多导致把CPU使用率跑到100%
- OPS压力过大时需要通过水平扩展分摊OPS压力
- OPS不大时可能是因为使用了高算法度命令或过度内存优化,利用info commandstats分析不合理开销的命令
- 持久化阻塞,可能为fork阻塞、AOF刷盘阻塞或HugePage写阻塞
- CPU竞争
- Redis为典型的CPU密集型应用,不应与其他CPU密集型服务部署在一起
- Redis绑定CPU减少上下文切换,提高性能,但持久化时子进程会与父进程同时使用同一CPU且占用CPU达90%以上,导致父子进程CPU激烈竞争
- 内存交换,Redis使用的内存被交换到硬盘导致性能大为下降
- 保证机器内存充足、确保Redis的maxmemory、降低swap优先级
- 网络问题,连接拒绝、网络延时、网卡软中断。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6836.html