五、Redis内存消耗

从性能上来说,内存占用过高会引起Reids响应变慢

从高可用上来说,内存过大可能会会引起部分数据丢失,故障恢复变慢

Redis内存消耗主要在于其主进程消耗和子进程消耗。而主进程消耗又主要包括自身内存、对象内存、缓冲区内存、内存碎片五个方面

1、自身内存

指Redis进程自身所占用的内存,这部分内存通常很小

2、对象内存

五大对象,对象内存是Redis内存中占用最大的

3、缓冲区内存

主要的三大缓冲区,详情见下文

4、内存碎片

主要是由于操作系统的内存分配机制和Redis内存分配器的分配策略所决定的

5、子进程内存消耗

子进程内存消耗主要指执行AOF/RDB重写时Redis创建的子进程内存消耗

在执行RDB快照和AOF重写时主进程会fork出一个子进程,由子进程完成快照和重写操作,虽然使用了写时复制的技术,子进程可以不用完全复制父进程的所有物理内存,但是仍然需要复制其内存页表,在此期间如果有写入操作则需要复制出一份副本出来。因此子进程同样会消耗一部分内存,其消耗的内存量取决于RDB和AOF期间的写入命令量

 

 

posted @   上好佳28  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示