Redis 持久化时的内存问题
資深大佬 : Eridani117 0
前几天一个前辈说,Redis 在 Rdb 持久化的时候,应该拥有双倍内存。
比如 MaxMemory 是 1G,那么机器总内存就应有 2G 。
我觉得他讲的应该是 fork 出子线程之后,子线程将主线程的内存做一个快照,导致总共需要 2G 。
但是 Linux 不是有 copy-on-write 机制吗,只有内存页被修改主线程才需要新建一个页副本,其他情况下子线程和父线程共享内存。
只有极端情况下才会导致需要双倍内存。
请问有人能详细解释一下吗。
大佬有話說 (1)