一次laravel队列服务问题

2021-07-12  本文已影响0人  咯噔爸比

故事情节

风和日丽的周一上午,一切如常,唯一不同的是堆积1周的版本与周五晚间发布了(安卓审核了一周😭)
早上5点多有服务报警redis使用率达到了80%;开完大早会(2个小时左右,站的退都麻了)接着开展周一的业务。检查发现redis用了50%左右,认为是使用率将下来了。
下午的时候有用户报登录不上了。
1.简单排查后怀疑是redis的问题
2.未定位到redis哪里有问题尝试重启redis()
3.重启后有报警,切换到了备用库。加深了对redis出现问题(误解1)
4.测试环境切换新的redis做尝试发现好使
5.升级redis有2个分片到8个分片,报错的声音没有了大家都陆续的恢复了。(误解2)
6.还有个别用户无法登陆,开始处理,以为是分片的问题。通过增加{}强制切换分片解决了问题晚上7点钟左右。开开心心回家。
7.还有接到用户无法登陆,开始继续排查问题,晚上9点钟左右一通处理后,直到页面OOM了确认是内存不够了

报错:OOM command not allowed when used memory >'maxmemory' 

查看redis 发现空间是够的,这个不解(知识误区 redis是集群是分片的)
查看了redis大key发现问题所在,由于有一条队列一直往里写入没有消费造成了磁盘满了

总结

1.报警要重视,尤其这种突发增长的报警
2.要相信服务器的问题小于代码逻辑的问题
3.扩展知识面方便排查问题

上一篇下一篇

猜你喜欢

热点阅读