zoukankan      html  css  js  c++  java
  • 用gperftools优化Nginx和MySQL内存管理 Leone

    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完成。
  • 相关阅读:
    GZDBHelper C#.NET开源的数据库访问组件
    判断页面是否是静态页面
    Web应用程序dll获取当前程序集路径问题
    webAPI 上传文件
    解决.Net Core3.0 修改cshtml代码之后必须重新生成才可以看到效果
    .net core使用LESS
    test
    JS实现线程锁(Promise),NodeJS并发锁处理
    参考护照编码实现算法JS生成带字母有序编码
    centos7防火墙开放端口与关闭防火墙
  • 原文地址:https://www.cnblogs.com/doseoer/p/4007582.html
Copyright © 2011-2022 走看看