使用jemalloc优化swoole内存分配性能
关于jemalloc
jemalloc是一个比glibc malloc更高效的内存池技术,在Facebook公司被大量使用,在FreeBSD和FireFox项目中使用了jemalloc作为默认的内存管理器。
与tcmalloc不同的是jemalloc使用纯C语言开发。而tcmalloc是使用C++开发的。
安装jemalloc
- GITHUB主页:https://github.com/jemalloc/jemalloc
- 下载地址:https://github.com/jemalloc/jemalloc/releases/tag/4.0.4
编译安装:
./configure sudo make -j install sudo ldconfig
使用jemalloc
1.7.x版本手工修改Makefile文件进入swoole-src
目录修改Makefile
文件,
在SWOOLE_SHARED_LIBADD
尾部追加-ljemalloc
,然后重新编译安装swoole,即可使用jemalloc
优化内存分配的性能。
1.8.0或更高版本编译参数增加--enable-jemalloc