Redis 中可能导致性能问题以及原因

1、线上环境是用 keys 命令

因为 Redis 是单线程的,执行 keys 命令会导致扫描 所有的 key 非常耗时,导致阻塞了其他的命令执行。从而影响性能,一般线上环境会禁止使用该命令

 

2、aof 备份数据方式配置了 appendfsync always 每次数据改变都同步刷新到磁盘

每写入一条日志就进行一次fsync操作,数据安全性最高,但速度最慢,因为要进行磁盘操作。如果一个时间段内有大量的数据变动操作,会阻塞其他的命令执行。一般线上环境设置为 appendfsync everysec 由后台线程每秒fsync一次,如果 redis 挂了,最多也就丢失一秒内的数据变动。

 

3、重写 AOF 文件

AOF 在重写的时候会占大量的 CPU 和内存,导致服务 load 过高,出现短暂服务暂停现象,一般线上环境  Master 一般关闭快照和 AOF 的备份方式,而是由单独的 salve 进行备份。

 

4、Swap引发的延迟

当 Linux 将 Redis 所用的内存分页移至 swap 空间时,将会阻塞 Redis 进程,导致 Redis 出现不正常的延迟。Swap 通常在物理内存不足或一些进程在进行大量I/O操作时发生,应尽可能避免。

 

其他情况待后续补充

扫码查看 JAVA 相关面试题

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值