I'm into Redis open source project these days, so I've read README of the project.
Reading that, I gotta question about Memory allocator for Redis.
~~~
Selecting a non-default memory allocator when building Redis is done by setting the MALLOC environment variable. Redis is compiled and linked against libc malloc by default, with the exception of jemalloc being the default on Linux systems. This default was picked because jemalloc has proven to have fewer fragmentation problems than libc malloc.
~~~
I'm having a hard time understanding the reason why jemalloc
is default for Redis on Linux System.
I saw briefly about jemalloc, and they said, "jemalloc implementation emphasizes fragmentation avoidance and scalable concurrency support".
Is that just for better performance of Redis on Linux, or is there any reason for using jemalloc otherwise?
Thanks for reading my question guys.