当前位置: 首页 > Linux运维 > 使用jemalloc来优化Nginx、MySQL内存管理

使用jemalloc来优化Nginx、MySQL内存管理

Linux运维 0条评论 2019-4-6 2,902 views

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内存管理


发表评论

电子邮件地址不会被公开。 必填项已用*标注