面试题答案
一键面试调整策略及理由
- 修改
save
配置:- 策略:减少
save
配置中触发RDB快照的时间和写操作次数。例如,默认配置可能是save 900 1
(900秒内如果有1个写操作则触发快照),可以调整为save 300 10
(300秒内如果有10个写操作触发快照)。 - 理由:在高并发场景下,缩短触发快照的时间间隔,能更频繁地保存数据,减少因系统故障导致的数据丢失。增加写操作次数是为了避免过于频繁的快照操作影响性能,在一定性能开销和数据丢失风险间取得平衡。
- 策略:减少
- 启用
stop - writes - on - bgsave - error
:- 策略:将
stop - writes - on - bgsave - error
设置为yes
。 - 理由:当后台执行RDB快照(
bgsave
)出错时,设置此选项为yes
会停止Redis写操作,防止数据不一致问题进一步恶化,减少因错误导致的数据丢失。
- 策略:将
- 配置
rdbcompression
:- 策略:可以考虑将
rdbcompression
设置为no
。 - 理由:在高并发场景下,压缩RDB文件会消耗CPU资源,关闭压缩可以减少CPU开销,提升系统性能,虽然会增加RDB文件的存储空间,但在保障性能优先且存储空间允许的情况下是合理的选择。
- 策略:可以考虑将
- 设置
rdbchecksum
:- 策略:保持
rdbchecksum
为yes
(默认值)。 - 理由:开启校验和可以在加载RDB文件时验证数据的完整性,确保加载的数据是正确的,避免因数据损坏导致的数据丢失。
- 策略:保持