美文网首页
Redis变慢了(七) - 使用Swap

Redis变慢了(七) - 使用Swap

作者: aoshi | 来源:发表于2020-11-27 09:57 被阅读0次

    转载地址 :https://www.jianshu.com/p/1ec5af47ae00

    使用Swap

    如果你发现Redis突然变得非常慢,每次访问的耗时都达到了几百毫秒甚至秒级,那此时就检查Redis是否使用到了Swap,这种情况下Redis基本上已经无法提供高性能的服务。

    我们知道,操作系统提供了Swap机制,目的是为了当内存不足时,可以把一部分内存中的数据换到磁盘上,以达到对内存使用的缓冲。

    但当内存中的数据被换到磁盘上后,访问这些数据就需要从磁盘中读取,这个速度要比内存慢太多!

    尤其是针对Redis这种高性能的内存数据库来说,如果Redis中的内存被换到磁盘上,对于Redis这种性能极其敏感的数据库,这个操作时间是无法接受的。

    我们需要检查机器的内存使用情况,确认是否确实是因为内存不足导致使用到了Swap。
    如果确实使用到了Swap,要及时整理内存空间,释放出足够的内存供Redis使用,然后释放Redis的Swap,让Redis重新使用内存。

    释放Redis的Swap过程通常要重启实例,为了避免重启实例对业务的影响,一般先进行主从切换,然后释放旧主节点的Swap,重新启动服务,待数据同步完成后,再切换回主节点即可。

    可见,当Redis使用到Swap后,此时的Redis的高性能基本被废掉,所以我们需要提前预防这种情况。

    我们需要对Redis机器的内存和Swap使用情况进行监控,在内存不足和使用到Swap时及时报警出来,及时进行相应的处理。

    注意:redis有自己的swap机制,如果redis并没有使用自身的swap机制,而是使用linux的swap机制,效果会更糟。


    image.png

    相关文章

      网友评论

          本文标题:Redis变慢了(七) - 使用Swap

          本文链接:https://www.haomeiwen.com/subject/gmaumktx.html