redis 内存划分

1.数据:作为数据库,数据是最主要的部分,这部分占用的内存会被统计在used_memory中

2.进程内存:redis主进程本身运行需要占用的内存,这部分内存会被统计在used_memory_rss中,不会被统计到used_memory中 

  补充说明:除了主进程外,redis还有紫禁城也会占用内存,比如redis的AOF和RDB重写是创建的子进程,这部分内存不属于redis进程,不会被统计在used_memory和used_memory rss中

3.缓冲内存:宝坤客户端缓冲区(缓冲客户端链接的输入输出缓冲),复制积压缓冲区(用于部分复制功能,)AOF缓冲区(用于在AOF重写时,保存最近的写入命令)等,这些都会被统计在used_memory中

4.内存碎片:内存碎片是由于redis在进行分配和回收物理内存的过程中产生的,例如对数据频繁的修改,而且数据之间的大小相差很大,可能导致redis释放的空间在物理内存中并没有释放,但redis又无法有效的利用,这就会形成内存碎片,内存碎片不会统计在used_memory中,但会统计在used_memory_rss中

posted @ 2021-09-12 12:19  it_bky  阅读(164)  评论(0编辑  收藏  举报