卡飞资源网

专业编程技术资源共享平台

Redis 常见系统问题处理

1、执行命令后,导致系统卡顿,甚至断开主从连接?

在Redis存储了大量数据时,一些命令可能导致系统阻塞,尽量不要执行下列命令。 config、flushall、flushdb、shutdown、eval。

如图所示:显示超时连接

2、线上尽量禁止使用 monitor 命令?

它实时打印出 Redis 服务器接收到的命令,调试程序之后可以用。在高并发条件下,会存在内存暴增和影响 Redis 性能的隐患。

3、Redis客户端连接过多不释放?

查看redis连接信息: /opt/redis/src/redis-cli -c -h x.x.x.x -p xxxx info clients, 设置空闲清理时间: redis-cli config set timeout 300。

4、哨兵模式故障转移的日志内容?

5、查看Redis相关的错误日志内容?

brgrep redis.log -e errorbrbr
grep redis-sentinel.log -e error

6、Redis缓存穿透问题?

解决办法:

1.增加参数校验

2从网关层Nginx增加配置项。对单个IP每秒访问次数超出阈值的的IP都拉黑。

3布隆过滤器( Bloom Filter )这个也能很好地防止缓存穿透的发生,将所有可能存在的数据哈希到一个足够大的bitmap中,一个一定不存在的数据会被 这个bitmap拦截掉,从而避免了对底层存储系统的查询压力。

7、Redis缓存雪崩问题?

解决办法:

1.批量往Redis存数据的时候,把每个Key的失效时间都加个随机值就好了 。这样可以保证数据不会在同 时间大面积失效。

  1. Redis是集群部署,将热点数据均匀分布在不同的Redis库中也能避免全部失效的问题。
  2. 设置热点数据永远不过期,有更新操作就更新缓存就好了。
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言