由于redis导致的系统奔溃

背景

上一篇说到,由于用户激增,已将redis改为集群redis,但是遇到了新的问题,忽然db链接数爆了,报警信息不断,cpu爆了,应用打不开了。

redis集群

下面是我们使用redis集群的架构,读写分离,一主两从,5分片。
在这里插入图片描述

问题描述

平时的用户活跃多在晚上,但是出现问题的是在中午,忽然数据库报警,链接过多。应用也打不开了,就开始查问题,查数据库慢日志,查程序日志,都是正常的,看redis集群cpu和内存也都正常,之前不懂redis集群架构,不知道还有proxy需要去关注,最后在程序日志中发现,redis链接超时,导致程序连不上,但是命令行操作还可以。最后在腾讯云的redis集群后台发现是proxy过高,部分热key超高请求导致的,下面是proxy监控的地方。
在这里插入图片描述

好记性不如烂笔头

总结下来其实就是redis的集群架构不了解,从上面的架构图就能看出,多个应用服务器将请求先请求到proxy服务器集群,相当于多个路由器,根据key或分片具体逻辑,找到所使用分片,因为热key请求数超高,导致一个路由器cpu打满崩溃,最后导致所有的进程都连不到redis,不得不请求数据库,导致数据库链接过多,cpu打满。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值