您的位置:首页 > 运维架构 > Nginx

用gperftools优化Nginx和MySQL内存管理

2012-11-09 11:48 330 查看
Google 开发的 gperftools 包含四个工具,分别是:TCMalloc、heap-checker、heap-profiler 和 cpu-profiler,TCMalloc是 gperftools 的其中一个工具,用于优化C++写的多线程应用,与标准的glibc库的malloc相比,TCMalloc在内存的分配效率和速度要高,可以在高并发的情况下很好的控制内存的使用,提高服务器的性能,降低负载。
使用 TCMalloc 优化 Nginx 和 MySQL 的内存管理,性能将会有一定程度的提升,特别是对MYSQL服务器高并发下情况下的性能。
安装 libunwind 库 如果系统是64位的需要先安装libunwind库,32位系统则不需要安装。
libunwind 库为基于64位CPU和操作系统的程序提供了基本的堆栈辗转开解功能,其中包括用于输出堆栈跟踪的API、用于以编程方式辗转开解堆栈的API以及支持C++异常处理机制的API。

说明:

操作系统:CentOS
Nginx安装路径:/usr/local/nginx
Nginx配置文件路径:/usr/local/nginx/conf/nginx.conf
nginx安装包目录:/usr/local/src/nginx-1.2.4 Nginx
软件版本:nginx-1.2.4

一、下载软件包
 http://mirror.yongbok.net/nongnu/libunwind/libunwind-1.1.tar.gz  #下载libunwind https://gperftools.googlecode.com/files/gperftools-2.0.tar.gz   #下载gperftools
上传软件包到服务器的/usr/local/src目录下面

二、安装gperftools

1、安装libunwind(安装gperftools前需要先安装libunwind)
cd /usr/local/src  #进入安装目录
tar zxvf libunwind-1.1.tar.gz  #解压
cd libunwind-1.1
./configure #配置
make #编译
make install #安装
系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接
2、安装gperftools
cd /usr/local/src
tar zxvf gperftools-2.0.tar.gz
cd gperftools-2.0 #进入目录
./configure --enable-frame-pointers #配置
make
make install
3、配置gperftools
vi /etc/ld.so.conf.d/usr_local_lib.conf  #编辑,添加以下内容
/usr/local/lib
:wq! #保存退出

/sbin/ldconfig  #执行此命令

cd /usr/local/src/nginx-1.2.4 #进入nginx安装包目录

./configure --prefix=/usr/local/nginx --with-google_perftools_module --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-openssl=/usr/ --with-pcre=/usr/local/src/pcre-8.31
#重新配置nginx,添加--with-google_perftools_module参数

make #编译
make install  #安装

mkdir /tmp/tcmalloc  #新建目录
chmod  777 /tmp/tcmalloc -R  #设置目录权限

4、配置nginx




vi /usr/local/nginx/conf/nginx.conf #编辑,在#pid logs/nginx.pid;这行的下面添加
google_perftools_profiles /tmp/tcmalloc;
:wq! #保存退出
系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接
service nginx restart  #重启nginx

三、测试

lsof -n | grep tcmalloc #测试tcmalloc
lsof -n | grep nginx  #测试nginx








至此,CentOS下安装gperftools优化nginx完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: