生产环境99%的问题来自于变更,出现问题立即拉起所有相关人员同步问题
- 问题发生时间点
- 出现问题的集群
- 问题影响服务
- 问题影响的业务
事中排查处理(并行)
- 变更排查,变更包括代码发布、配置参数变更、机器配置变更、业务配置变更、SQL提交等。如果Redis CPU 持续飙高,立即回滚变更。
- 流量排查,排查流量是否有变更包括接口流量,消息队列流量,定时任务流量。如果有流量突增,增加的流量入口进行限流,并通知流量发起方下线该部分功能。
- 通过redis监控找到执行耗时长的命令,根据命令排查提交命令入口,将该部分功能临时下线。
- Redis 关闭 AOF持久化操作
- Redis 禁用高耗时命令
原因排查
redis cpu 100% 有哪些原因可以导致。如下:
1.redis连接数过高
2.数据持久化导致的阻塞
3.主从存在频繁全量同步
4.value值过大
5.redis慢查询
事后(预防)
1. 使用redis连接池
2. 添加连接数告警
3. 根据不同的宕机数据丢失容忍性配置不同的持久化策略
4. 主从架构调整为级联集群
5. 添加大key请求监控
6. 禁用部分慢查询命令如:keys *
7. 添加慢查询监控
8. 核心非核心业务redis集群隔离部署,使用不同的集群
9. 核心业务redis集群出问题后支持降级和熔断