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

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