首页 » Linux » CentOS » 通过TCMalloc来优化nginx

通过TCMalloc来优化nginx

 

TCMalloc(Thread-Caching Malloc)是google开发的开源工具gperftools中的一个成员,tcmalloc比glibc中的malloc内存分配效率要快,tcmalloc特别对多线程做了优化,很大程度提高了服务器在高并发下的性能,从而降低了系统的负载。

tcmalloc属于gperftools,安装前提必须安装libunwind(32位系统不需要安装),libunwind库为基于64位cpu和操作系统的程序提供了基本函数调用链和函数调用寄存器功能。

一、下载相关软件包

官方下载地址:

https://github.com/gperftools/gperftools/releases/download/gperftools-2.7/gperftools-2.7.tar.gz

https://download-mirror.savannah.gnu.org/releases/libunwind/libunwind-1.2.tar.gz

本地下载地址:

http://down.whsir.com/downloads/gperftools-2.7.tar.gz

http://down.whsir.com/downloads/libunwind-1.2.tar.gz

二、安装所需依赖

三、创建nginx启动用户

四、解压编译安装libunwind和gperftools

五、编译nginx

编译时要添加--with-google_perftools_module参数,我这里使用的全新nginx编译,如果已有编译好的nginx,只需要执行前面第二步后单独添加一个--with-google_perftools_module参数重新编译即可

设置个软连接

设置systemctl

六、为gperftools创建一个线程目录

七、配置nginx.conf

在#pid logs/nginx.pid;下面增加一行

八、最后启动nginx并验证

这里看到有多少条记录是根据nginx的worker_processes线程数来的

原文链接:通过TCMalloc来优化nginx,转载请注明来源!

0