Redis 性能优化

  • CPU 相关:复杂度的命令、数据的持久化都需要消耗cpu资源。机器单独使用redis,cpu占比80%即可。如服务机器:一定注意其他服务的瞬时cpu消耗,或者长时间占用过多cpu情况。
  • 内存相关:
                            (1)内存使用量:推荐使用30G-50G为宜,再大时落盘、或重启恢复时会出现卡顿、慢的情况。
                        
                            (2)bigkey内存的申请和释放、数据过期、数据淘汰等,大key的操作会严重影响性能,定期刷一刷库,看看有没有大批量异常数据出现,即使清理。
                        
                            (3)避免大key把内存占满了,写不进来数据。
                        
  • 磁盘相关:数据持久化、AOF 刷盘策略,也会受到磁盘的影响。
                            配置:appendfsync no,把Redis 每次写操作只写内存,什么时候把内存中的数据刷到磁盘,交给操作系统决定,此方案对 Redis 的性能影响最小,但当 Redis 宕机时,会丢失一部分数据,为了数据的安全性,一般我们也不采取这种配置。
                        
  • 网络相关:网卡尽量用万兆了的,避免短连接、实例流量过载、网络流量过载等。大key操作时,根据qps计算网卡使用量,避免网卡成瓶颈。
  • 其他:可以绑定cpu、设置内存大页、关闭swap等,都能提高一部分性能,具体接触实际业务时调参设置。

  • Redis性能优化对照检查


    参考链接:

    http//redis.com.cn/redis-intro.html
    https://pdai.tech/md/db/nosql-redis/db-redis-x-performance.html