共计 734 个字符,预计需要花费 2 分钟才能阅读完成。
jemalloc 强调了碎片避免和可扩展的并发支持。jemalloc 于 2005 年首次作为 FreeBSD libc 分配器使用,从那以后它已经进入许多依赖于其可预测行为的应用程序。jemalloc 适合多线程下内存分配管理,jemalloc 从各方评测的结果可见与 google tcmalloc 都不相伯仲,皆为内存管理器领域最高水平。如下图:
安装 jemalloc
可以从 Github:https://github.com/jemalloc/jemalloc/releases 获取最新版本的 jemalloc,安装方法如下(仅供参考)
# 安装依赖
yum -y install gcc gcc-c++
#下载 jemalloc
wget http://soft.xiaoz.org/linux/jemalloc-5.2.0.tgz
tar -zxvf jemalloc-5.2.0.tgz
cd jemalloc-5.2.0
#安装 jemalloc
./configure
make && make install
echo '/usr/local/lib' > /etc/ld.so.conf.d/local.conf
ldconfig
jemalloc 优化 MySQL
MySQL/MaridDB 5.5 编译方法,cmake 预编译时加上下面参数
-DCMAKE_EXE_LINKER_FLAGS="-ljemalloc" -DWITH_SAFEMALLOC=OFF
jemalloc 优化 Nginx
在编译 nginx 的时候直接添加 --with-ld-opt=-ljemalloc
参数即可
最后
输入命令 lsof -n | grep jemalloc
可以查看 jemalloc 是否已经生效,如下截图。
此文部分内容参考了:jemalloc 优化 MySQL、Nginx 内存管理
正文完
星哥玩云-微信公众号