Redis缓存的一些知识点

会导致 Redis 阻塞的情况:

Redis 产生阻塞的原因主要有内部和外部两个原因导致:

内部原因

  • 如果 Redis 主机的 CPU 负载过高,也会导致系统崩溃;
  • 数据持久化占用资源过多;
  • 对 Redis 的 API 或指令使用不合理,导致 Redis 出现问题。
    外部原因
  • 外部原因主要是服务器的原因,例如服务器的 CPU 线程在切换过程中竞争过大,内存出现问题、网络问题等。

有大量的 key 需要设置同一时间过期如何处理:
如果有大量的 key 在同一时间过期,那么可能同一秒都从数据库获取数据,给数据库造成很大的压力,导致数据库崩溃,系统出现 502 问题。也有可能同时失效,那一刻不用都访问数据库,压力不
够大的话,那么 Redis 会出现短暂的卡顿问题。所以为了预防这种问题的发生,最好给数据的过期
时间加一个随机值,让过期时间更加分散。

提高缓存命中率的常用方法:

  • 提前加载数据到缓存中;
  • 增加缓存的存储空间,提高缓存的数据;
  • 调整缓存的存储数据类型;提升缓存的更新频率。

Redis key 冲突的解决方法:
Redis 如果 key 相同,后一个 key 会覆盖前一个 key。如果要解决 key 冲突,最好给 key 取好名区
分开,可以按业务名和参数区分开取名,避免重复 key 导致的冲突。

Redis 报内存不足处理方案:

  • 修改配置文件 redis.conf 的 maxmemory 参数,增加 Redis 可用内存;
  • 设置缓存淘汰策略,提高内存的使用效率;
  • 使用 Redis 集群模式,提高存储量。

你可能感兴趣的:(缓存,redis,数据库)