Codis/Redis数据莫名丢失

问题

codis3.2.2集群中(三台机器),其中一台机器上会出现这种情况:某个库莫名消失或某个库的数据(非过期数据)莫名丢失。其他两台机器未出现这种情况。

排查

redis的内存问题。因为三台机器上的redis的maxmemory均设置为100000kb,约97.66MB,maxmemory-policy设置为allkeys-lru数据淘汰策略(从内存数据集中挑选最近最少使用的数据淘汰),即当redis内存数据集快到达maxmemory时,redis会实行allkeys-lru数据淘汰策略。而出现问题的机器上used_memory_human约达到96MB,其他俩机器used_memory_human约15-20MB。其中maxmemory,used_memory可通过命令info memory查看。

解决

提高maxmemory的值。因为集群在运行中,所以这里通过命令行更改maxmemory的值,先执行config set maxmemory 3G,再执行config rewrite

参考

https://redis.io/topics/lru-cache

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章