作者: 老夏
概述
天下武功,无坚不摧,唯快不破!软件也是。
通常我们为了获得更快的读取速度会使用缓存,缓存是利用空间换时间较为常用的架构设计模式,我们在开发中也经常会使用这种模式,例如 当数据量达到一定数量时 用 HashMap 取代遍历 List,虽然 HashMap 占用更大的空间,但是 HashMap 查询时间复杂度是O(1)(理想状态下)。Redis 是我们比较常用的缓存,接下来我会分享几个 我所见所闻的坑。
一,不要图快什么数据都存 Redis
我之前听过一个笑话,开发人员因为在循环里查库,导致接口请求时间过长,为了解决查询慢的问题,开发人员选择使用 Redis,开发人员会把查过数据存放在 Redis ,并且设置了失效时间,在开发自测环节,以及测试环节,都算比较平稳,但是上线不久后就遇到了业务高峰期,服务器居然宕机!!!原本服务器空闲 10G左右,现在居然宕机了。后边经过排