首页服务器Web服务器 让lnmp支持tcmalloc

让lnmp支持tcmalloc

tcmalloc是什么东西?TCMalloc (google-perftools) 是用于优化C++写的多线程应用,比glibc 2.3的malloc快。这个模块可以用来让MySQL在高并发下内存占用更加稳定。 用网上的方…

tcmalloc是什么东西?TCMalloc (google-perftools) 是用于优化C++写的多线程应用,比glibc 2.3的malloc快。这个模块可以用来让MySQL在高并发下内存占用更加稳定。
用网上的方法加入到lnmp的 mysql和nginx 是不行的。因为nginx是要编译的时候加进去的,mysql lnmp默认是全部静态编译的。
所以要修改lnmp的安装脚本,由于静态编译所以安装lnmp之前安装 tcmalloc。
下载
wget http://gperftools.googlecode.com/files/gperftools-2.0.tar.gz
解压
tar xf gperftools-2.0.tar.gz
cd gperftools-2.0
配置
./configure
编译安装
make && make install
一切顺利的话
echo “/usr/local/lib” > /etc/ld.so.conf.d/usr_local_lib.conf
/sbin/ldconfig

下载
wget -c http://soft.vpser.net/lnmp/lnmp0.9-full.tar.gz
解压
tar xf lnmp0.9-full.tar.gz
cd lnmp0.9-full

修改安装脚本,我这里用的是 centos 的
vi ./centos.sh

让mysql支持tcmalloc
大概在306行 尾部增加
–with-mysqld-ldflags=-ltcmalloc
大概在308行 尾部增加
–with-mysqld-ldflags=-ltcmalloc

让nginx支持tcmalloc
大概在460行尾部增加
–with-google_perftools_module

wq退出保存后,执行./centos.sh 按平时安装lnmp

lnmp安装完成后还要修改一些nginx参数
mkdir -p /tmp/tcmalloc/
chown -R www:www /tmp/tcmalloc/
编辑
vi /usr/local/nginx/conf/nginx.conf
worker_rlimit_nofile 51200; 下面一行增加(反正在外面)
google_perftools_profiles /tmp/tcmalloc/;
wq 保存退出

然后重启lnmp
执行 lsof -n | grep tcmalloc 能看到说明成功了。
nginx 12256 www 9w REG 0,29 0 13011440 /tmp/tcmalloc/.12256
mysqld 13425 mysql mem REG 253,0 10685079 /usr/local/lib/libtcmalloc.so.4.1.0 (path dev=0,29)

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/fwq/web/7092.html
上一篇企业租用服务器的管理需注意哪些方面
下一篇 raid什么意思,raid卡是什么?
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部