- 1. 注冊(cè)表優(yōu)化工具(WinASO Registry Optimizer) 4.7.5...
- 2. 360技師系統(tǒng)超強(qiáng)優(yōu)化工具
- 3. Windows設(shè)置(可以優(yōu)化系統(tǒng)、管理服務(wù)、IE安全等等)...
- 4. 系統(tǒng)性能優(yōu)化工具(WinUtilities Pro) 10.41 單文件...
- 5. Fresh UI(系統(tǒng)高級(jí)優(yōu)化工具) 8.80 綠色多語言版
- 6. APMServ(一鍵搭建PHP+MySQL+ASP+Nginx平臺(tái)) v5....
- 7. win7注冊(cè)表優(yōu)化合集
- 8. InCD 簡體中文使用手冊(cè)
- 9. HomeShare(寬帶共享)使用詳解
- 10. goagent+賬號(hào)+使用方法 1.6.9穩(wěn)定版下載
使用google-perltools 優(yōu)化nginx
因?yàn)橐獙W(xué)習(xí)nginx的性能優(yōu)化,在網(wǎng)上搜到了"利用TCMalloc優(yōu)化nginx的性能"和“使用google-perftool優(yōu)化nginx的性能”的文章。分別看了這些文章,發(fā)現(xiàn)是一樣的內(nèi)容。
其實(shí),google-perftools包含四個(gè)工具,分別是:TCMalloc、heap-checker、heap-profiler和cpu-profiler,TCMalloc是google-perftools的其中一個(gè)工具,用于優(yōu)化內(nèi)存分配的效率和速度,幫助在高并發(fā)的情況下很好的控制內(nèi)存的使用。
在mysql 和nginx 性能優(yōu)化方案中,大多數(shù)教程都是使用google-perftools提供的TCMalloc工具,TCMalloc在內(nèi)存的分配上效率和速度要比malloc高得多。但是,nginx的內(nèi)存占用其實(shí)是很少的,一個(gè)進(jìn)程占用的內(nèi)存大概只有12M左右,所以google-perftools對(duì)nginx的優(yōu)化效果可能不太明顯。
但既然有這個(gè)技術(shù),就學(xué)著用唄。
安裝配置google-perftools
安裝之前需要先確定是64位的還是32位的,如果是64位的OS,需要在安裝google-perftools之前安裝libunwind庫,查看方法:
01.[root@lvs ~]# uname -a 02.Linux lvs.master 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i386 GNU/Linux 03.[root@lvs ~]# 這則表示我的環(huán)境是32位的環(huán)境。所以libunwind的安裝方法看官們就自己搜吧。(^O^)/
一、安裝google-perftools
01.[root@lvs pkgs]# wget http://gperftools.googlecode.com/files/google-perftools-1.10.tar.gz 02.[root@lvs google-perftools-1.10]# ./configure 03.[root@lvs google-perftools-1.10]# make && make install 04.[root@lvs google-perftools-1.10]#echo “/usr/local/lib” > /etc/ld.so.conf.d/usr_local_lib.conf 05.[root@lvs google-perftools-1.10]# ldconfig 二、重新編譯nginx
01.[root@lvs nginx-0.8.53]# ./configure --with-google_perftools_module --with-http_stub_status_module 02.[root@lvs nginx-0.8.53]# make && make install 三、為google-perftools添加線程目錄
01.[root@lvs nginx]# mkdir /tmp/tcmalloc 02.[root@lvs nginx]# chmod 0777 /tmp/tcmalloc/ 四、修改nginx配置文件
01.[root@lvs nginx]# vim /usr/local/nginx/conf/nginx.conf 02.添加如下一行: 03.google_perftools_profiles /tmp/tcmalloc; 04. 05.重啟nginx: 06.[root@lvs nginx]# ps ax | grep nginx | grep -v grep | awk '{print $1}' | xargs kill -9 07.[root@lvs nginx]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
這里我遇到了一個(gè)錯(cuò)誤:錯(cuò)誤提示
01.[root@lvs nginx]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 02./usr/local/nginx/sbin/nginx: error while loading shared libraries: libprofiler.so.0: cannot open shared object file: No such file or directory 03.[root@lvs nginx]# 后來發(fā)現(xiàn),原來是/etc/ld.so.conf.d/usr_local_lib.conf 這個(gè)文件里出現(xiàn)了問題,這個(gè)步驟“echo “/usr/local/lib” > /etc/ld.so.conf.d/usr_local_lib.conf”
我是復(fù)制的網(wǎng)上文章的,后來發(fā)現(xiàn)/etc/ld.so.conf.d/usr_local_lib.conf文件里出現(xiàn)了亂碼。改了之后就正常了。大家如果發(fā)現(xiàn)跟我一樣的錯(cuò)誤,
就手工查看一下文件是否正常吧。
01.[root@lvs lib]# /usr/local/nginx/sbin/nginx -V 02.nginx version: nginx/0.8.53 03.built by gcc 4.1.2 20080704 (Red Hat 4.1.2-46) 04.configure arguments: --with-google_perftools_module --with-http_stub_status_module 五、驗(yàn)證:
01.[root@lvs lib]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 02.[root@lvs lib]# lsof -n | grep tcmalloc 03.nginx 22171 nobody 10w REG 8,2 0 985587 /tmp/tcmalloc.22171 04.[root@lvs lib]# head /usr/local/nginx/conf/nginx.conf 05.user nobody; 06.worker_processes 1; 一個(gè)線程會(huì)有一個(gè)記錄文件,由于我只開了一個(gè)線程,所以只有一個(gè)記錄文件。
使用google-perftools優(yōu)化的配置方法已經(jīng)介紹完成。
- 1. 使用google-perltools 優(yōu)化nginx
- 2. 戴爾新備份磁盤陣列內(nèi)置數(shù)據(jù)優(yōu)化軟件
- 3. 使用GNS3架設(shè)PPPOE服務(wù)器巧妙獲取路由器ADSL密碼
- 4. 如何使用PowerShell命令統(tǒng)計(jì)Exchange 2010的郵箱數(shù)
- 5. 聯(lián)合索引優(yōu)化方式選擇
- 6. Ubuntu 使用 wifi 連接上網(wǎng)
- 7. Google 隱私權(quán)政策和服務(wù)條款發(fā)生變更
- 8. 前端開發(fā)利器webStorm 3.0配置使用
- 9. 使用 Task 簡化異步編程
- 10. 使用KTM(內(nèi)核事務(wù)管理器)進(jìn)行文件事務(wù)處理