踩坑系列之 redis读写分离引发的内存暴增

来源:互联网 发布:网网络加速器 编辑:程序博客网 时间:2024/05/22 16:55

前言

本文主要讨论当一台redis机器已无法满足日常io的时候,搞了读写分离,而引发了的另一个redis的坑。
这是一篇吃瓜群众的笔记。

问题

前些时间发现多个业务反馈redis删除过期的key太慢了。严重占用内存,导致使用的内存超过redis的最大内存,有可能会导致业务报错或者key值丢失(主要看maxmemory-policy策略)。

原因

我们的redis基本都是读写分离的。而redis自带懒处理的机制(不去获取是不主动删除过期的key的)。

解决建议

1.把住哭也驾到从库的域名,主库也进行get操作,加快过期key的删除。

点评:主从分离就是想分担读与写的压力,如果主库也加入了读,存在会影响写的时候的效率以及主库总体的压力。

2.定制一个crontab的任务,在业务低谷期进行scan主库,redis会自动删除过期的key(scan的操作比较缓和,相当get读,scan也支持*星号匹配key name)

点评:相对取巧的操作。待验证。

0 0
原创粉丝点击