gperftools优化nginx(内存)

说明:

操作系统:       CentOS 6.5 64bit (虚拟机)
nginx安装路径:    /data/apps/nginx
配置文件路径:     /data/apps/nginx/conf/nginx.conf
nginx源码包:     /data/softwrare/nginx-1.8.1

1、下载软件包

libunwind:    http://download.savannah.gnu.org/releases/libunwind/ 
gperftools:   https://github.com/gperftools/gperftools/releases

2、安装libunwind

#cd /data/software
#tar -xvf libunwind-1.1.tar.gz
#cd libunwind-1.1
#CFLAGS=-fPIC ./configure --enable-shared 
#make CFLAGS=-fPIC
#make CFLAGS=-fPIC install

3、安装gperftools

#cd /data/software
#tar -xvf gperftools-2.5.tar.gz
#cd gperftools-2.5
#./configure --enable-shared && make && make install

4、配置gperftools

#echo "/usr/local/lib" >>/etc/ld.so.conf   (注:如果先安装nginx可不运行)
#ldconfig

5、与nginx配置编译

添加--with-google_perftools_module参数

#cd nginx-1.8.1
#./configure --prefix=/data/apps/nginx --conf-path=/data/apps/nginx/conf/nginx.conf \
--error-log-path=/data/logs/nginxlogs/error.log \
--http-log-path=/data/logs/nginxlogs/access.log \
--pid-path=/data/apps/nginx/run/nginx.pid \
--user=website \
--group=website \
--with-http_ssl_module \
--with-http_spdy_module \
--with-http_addition_module \
--with-http_sub_module \
--with-pcre=/data/software/pcre-8.39 \
--with-zlib=/data/software/zlib-1.2.8 \
--with-openssl=/data/software/openssl-1.0.2j/ \
--http-client-body-temp-path=/data/apps/nginx/temp/client_body_temp \
--http-proxy-temp-path=/data/apps/nginx/temp/proxy_temp \
--http-fastcgi-temp-path=/data/apps/nginx/temp/fastcgi_temp \
--http-uwsgi-temp-path=/data/apps/nginx/temp/uwsgi_temp \
--http-scgi-temp-path=/data/apps/nginx/temp/scgi_temp \
--with-google_perftools_module
#make && make install

6、配置、测试nginx

#vim /data/apps/nginx/conf/nginx.conf
在#pid logs/nginx.pid;增加
google_perftools_profiles /data/temp/tcmalloc/;

#service nginx reload

#lsof -n |grep tcmalloc
#lsof -i tcp:80
COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   20119    root    6u  IPv4 425316      0t0  TCP *:http (LISTEN)
nginx   20120 website    6u  IPv4 425316      0t0  TCP *:http (LISTEN)
nginx   20121 website    6u  IPv4 425316      0t0  TCP *:http (LISTEN)
nginx   20122 website    6u  IPv4 425316      0t0  TCP *:http (LISTEN)
nginx   20123 website    6u  IPv4 425316      0t0  TCP *:http (LISTEN)