zoukankan      html  css  js  c++  java
  • 第三节 Nginx的优化

    优化的目的?
    •  标准情况下,软件默认的参数都是对安装软件的硬件标准来设置的,⽬目前我们服务器器的硬件资源远远⼤大于要求的标准,所以为了了让服务器器性能更更加出众,充分利利⽤用服务器器的硬件资源,我们⼀一般需要优化APP的并发数来提升服务器器的性能。

    优化方案?
    •  Nginx是主进程+工作进程模型
    •  worker_processes 1; 工作进程数量量 按CPU的总核⼼心调整
    •  worker_cpu_affinity 0010 0100 1000; CPU的亲和⼒力力
    •  worker_connections  1024; 一个工作进程的并发数

    1、并发优化
    worker_processes 4;
    worker_cpu_affinity 0001 0010 0100 1000;
    events {
      worker_connections 1024;
    }

    查看主机有几个CPU

    cat /proc/cpuinfo |grep "flags" |wc -l

     修改config的 worker_processes  的值为4 

    设置CPU的亲和力

    worker_cpu_affinity 0001 0010 0100 1000;

     

    设置并发数

     自定义输出

     ps -eo psr,pid,args |grep "nginx"

    修改Nginx的cpu亲和力

     

     修改后查看

    检查Nginx的连接数

    netstat -antpl |grep nginx |grep ESTABLISHED|wc -l

     

    长连接
    http协议属于TCP协议
    优化目标:减少三次握手和四次断开的次数
    keepalive_timeout 5; 长连接时间
    keepalive_requests 8192; 每个长连接接受最大请求数

    keepalive_timeout 0; 0代表关闭
    #keepalive_timeout 100;
    #keepalive_requests 8192;

    修改config

    keepalive_timeout  5;  修改长连接时长为5

    keepalive_timeout  5; 修改每个连接可以处理多少个请求数

     保存 退出 关闭 重启Nginx

    实现方式:

    # 开启gzip
    gzip off;
    # 启用gzip压缩的最小文件,小于设置值的文件将不会压缩
    gzip_min_length 1k;
    # gzip 压缩级别,1-9,数字越大压缩的越好,也越占用CPU时间,后面会有详细说明
    gzip_comp_level 1;
    # 进行压缩的文件类型。javascript有多种形式。其中的值可以在 mime.types文件中找到。
    gzip_types text/plain application/javascript application/x-javascript
    text/css application/xml text/javascript application/x-httpd-php
    image/jpeg image/gif image/png application/vnd.ms-fontobject font/ttf
    font/opentype font/x-woff image/svg+xml;
    # 是否在http header中添加Vary: Accept-Encoding,建议开启
    gzip_vary on;
    # 禁用IE 6 gzip
    gzip_disable "MSIE [1-6].";
    # 设置压缩所需要的缓冲区大小
    gzip_buffers 32 4k;
    # 设置gzip压缩针对的HTTP协议版本
    gzip_http_version 1.0;
    #找大文件
    find /usr/share/ -type f -size +1M

    未开压缩前

    修改config文件

    gzip on;
    gzip_proxied any;
    gzip_min_length 1k;
    gzip_buffers 4 8k;
    gzip_comp_level 6;
    gzip_types text/plain text/css application/x-javascript application/javascriptapplication/xml;

     

     修改后

     客户端缓存

    语法: expires [time|epoch|max|off]
    默认值: expires off
    作用域: http, server, location
    location ~.*.(js|css)?$
      {
      expires 1h;
     }

    修改config文件

    保存 重启

  • 相关阅读:
    openssl windows ndk 编译----0
    openssl windows ndk 编译
    android Android NDK开发2之Windows及L下的gcc手动编译(交叉连编译
    list 和 set 的区别
    Arrays.toString()方法和Arrays类 的一些概念
    几个简单的面试题
    大脑记忆(自我总结)
    DI() T()函数
    Latex设置
    selenium获取元素信息的方法
  • 原文地址:https://www.cnblogs.com/zhanleishang/p/10666963.html
Copyright © 2011-2022 走看看