您的位置:首页 > 教育 > 培训 > Redis:Redis性能影响因素

Redis:Redis性能影响因素

2024/10/6 22:19:32 来源:https://blog.csdn.net/yuming226/article/details/141790073  浏览:    关键词:Redis:Redis性能影响因素

这里写自定义目录标题

  • 一、CPU对Redis的影响
  • 二、磁盘对Redis的影响
  • 三、网络对Redis的影响
  • 四、Swap对Redis的影响

一、CPU对Redis的影响

二、磁盘对Redis的影响

在这里插入图片描述

性能建议

  • 如果是热点场景,建议大家关闭rdb和aof。
  • 在SATA和SAS普通盘上,appendfsync=always和appendfsync=everysec性能差异基本在50倍以上。
  • 在aof开启而且刷盘方式appendfsync=always时,磁盘对Redis的写入性能影响非常大,通常我们只在SSD时才尝试开启。
  • 如果主机IO非常繁忙,appendfsync=everysec在极限情况下可能导致Redis主线程阻塞。
  • 尝试关闭重写时写AOF文件,no-appendfsync-on-rewrite yes,但安全性变低。

三、网络对Redis的影响

应用程序和Redis主机之间的网络延时对性能影响非常大:
在这里插入图片描述
性能建议

  • 在普通的网络中,每增加一层交换机或路由器,网络延迟时间约在2ms左右,所以Redis和应用程序之间不要跨多个交换机和路由器。
  • Redis和应用程序在局域网时性能较高,最好是同交换机下部署,性能最佳。
  • 网络上的防火墙以及转发机器,也会对网络造成较大影响,建议采用直通网络模式。
  • Redis和应用程序之间的延迟时间如果超过了2ms,建议从网络优化方面考虑。

四、Swap对Redis的影响

操作系统为了缓解内存不足对应用程序的影响,允许把一部分内存中的数据换到磁盘上,以达到应用程序对内存使用的缓冲,这些内存数据被换到磁盘上的区域,就是Swap。

Redis的主要操作对象为内存,当内存中的数据被换到磁盘上后,Redis再访问这些数据时,就需要从磁盘上读取,访问磁盘的速度要比访问内存慢50倍以上,尤其在非SSD硬盘上,甚至几百倍以上。

查看Redis是否使用了Swap,其中pid为Redis进程号:
cat /proc/${pid}/smaps|egrep ‘^(Swap|Size)’

性能建议

  • 增加物理内存、关闭Swap内存。
  • 减小使用Swap内存阈值,比如:
    vm.swappiness = 5
    vm.min_free_kbytes=204800

查看swap是否关闭
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com