每日一博 | Redis 忽然变慢了如何排查并解决?
Redis 通常是我们业务系统中一个重要的组件,比如:缓存、账号登录信息、排行榜等。 一旦 Redis 请求延迟增加,可能就会导致业务系统“雪崩”。 我在单身红娘婚恋类型互联网公司工作,在双十一推出下单就送女朋友的活动。 谁曾想,凌晨 12 点之后,用户量暴增,出现了一个技术故障,用户无法下单,当时老大火冒三丈! 经过查找发现 Redis 报 Could not get a resource from the pool。 获取不到连接资源,并且集群中的单台 Redis 连接量很高。 大量的流量没了 Redis 的缓存响应,直接打到了 MySQL,最后数据库也宕机了…… 于是各种更改最大连接数、连接等待数,虽然报错信息频率有所缓解,但还是持续报错。 后来经过线下测试,发现存放 Redis 中的字符数据很大,平均 1s 返回数据。 可以发现,一旦 Redis 延迟过高,会引发各种问题。 今天「码哥」跟大家一起来分析下如何确定 Redis 有性能问题和解决方案。 [toc] Redis 性能出问题了么? 最大延迟是客户端发出命令到客户端收到命令的响应的时间,正常情况下 Redis 处理的时间...