1、缓存雪崩
同在一个时间段时,缓存大量失效,导致缓存命中率下降。结果大量查询都跑到DB上,导致DB崩溃挂掉。
解决办法:
(1)、缓存失效时间设置不集中。
(2)、脚本更新缓存频率不一样,如在3~6小时内依次更新缓存,更不是集中更新。
2、缓存无底洞
添加缓存机器后,反而不能增加缓存性能,如图。
解决办法:
采用哈希一致性的办法,将特定用户存在特定缓存上。读时,也从这台机器上读。
3、数据被踢
当MC机器可以存的KEY达到上限,一些不活跃的数据将被挤掉、踢掉(LRU,最不活跃删除掉)。
解决办法:
1、多分配内存给MC。
2、把永久的数据专存在一台MC上。