优化思路:

一.修改连接数和工作线程让其支持更多的并发量.

  worker_processes 2;                    //与CPU核心数量一致

  worker_connections 65535;        //每个worker最大并发连接数

二.调整内核参数限制(最大打开文件数量)

  ulimit -a   //查看所有属性值

  ulimit -Hn 100000   //设置硬限制(临时规则)

  ulimit -Sn 100000   //设置软限制(临时规则)

  编辑 /etc/security/limits.conf

  * soft nofile 100000

  * hard nofile 100000

#该配置文件分4列,分别如下:

#用户或组 硬限制或软限制 需要限制的项目 限制的值

三.优化nginx数据包头缓存

  在nginx配置文件中

  http{

    client_header_buffer_size 1k;        //默认请求包头信息的缓存     

    large_client_header_buffers 4 4k;        //大请求包头部信息的缓存个数与容量

  }

四.通过在配置文件中指定客户端缓存静态文件时间.

  server {

    listen 80;

    server_name localhost;

    location / {

      root html;

      index index.html index.htm;

    }

    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {

      expires        30d;            //定义客户端缓存时间为30天

    }

  }

五.日志文件切割

  通过脚本对nginx进行日志切割,重启nginx服务即可.

六.对页面进行压缩处理

  http{

    gzip on;          //开启压缩

    gzip_min_length 1000;     //小文件不压缩

    gzip_comp_level 4;      //压缩比率

    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

    //对特定文件压缩,类型参考mime.types

  }

七.服务器内存缓存

  如果是处理大量静态文件,可以将文件缓存在内存,下次访问会更快.

  http {

    open_file_cache max=1000 inactive=30s;  //设置服务器最大缓存1000个文件句柄,关闭30秒内无请求的文件句柄

    open_file_cache_valid 60s;  //文件句柄的有效时间是60秒,60秒后过期

    open_file_cache_min_uses 10;  //只有访问次数超过10次会被缓存

    open_file_cache_errors off;

}

八.隐藏版本信息 

  http {
    server_tokens off; //在http中加上server_tokens off 
  }

  编辑php-fpm配置文件,在动静分离location 分离php页面中找到fastcgi配置

  将 fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

  改为 fastcgi_param SERVER_SOFTWARE nginx;

nginx篇高级之优化整理的更多相关文章

  1. nginx篇高级用法之基于TCP/UDP的四层调度

    nginx 从1.9版本开始支持基于TCP/UDP的四层调度,在编译nginx时使用--with-stream开启该模块 支持TCP/UDP调度时,支持给所有的软件做调度器,例如:nfs smb ft ...

  2. nginx的高级配置和优化

    Nginx的高级配置(优化) 针对内核的配置优化 1)net.core.netdev_max_backlog 表示当网络接口接收数据包的速度大于内核处理这些包块的时候,允许发送到队列的数据包的最大数目 ...

  3. node.js后台快速搭建在阿里云(二)(pm2和nginx篇)

    前期准备 阿里云服务器 node.js pm2 express nginx linux(推荐教程:鸟哥的私房菜) 简介 嗯……我只是个前端而已 在第一部分说完了express篇. 后面继续项目的部署, ...

  4. Nginx错误日志与优化专题

    一.Nginx配置和内核优化 实现突破十万并发 二.一次Nignx的502页面的错误记录 (1)错误页面显示 错误日志: // :: [error] #: * recv() failed (: Con ...

  5. MySQL优化整理

    一.SQL优化 1.show status查看各种sql的执行频率   SHOW STATUS 可以根据需要显示 session 级别的统计结果和 global级别的统计结果.   显示当前sessi ...

  6. 如何让HTTPS站点评级达到A+? 还得看这篇HTTPS安全优化配置最佳实践指南

    0x00 前言简述 SSL/TLS 简单说明 描述: 当下越来越多的网站管理员为企业站点或自己的站点进行了SSL/TLS配置, SSL/TLS 是一种简单易懂的技术,它很容易部署及运行,但要对其进行安 ...

  7. 【夯实Nginx基础】Nginx工作原理和优化、漏洞

    本文地址 原文地址 本文提纲: 1.  Nginx的模块与工作原理    2.  Nginx的进程模型    3 . NginxFastCGI运行原理        3.1 什么是 FastCGI   ...

  8. 根据网站所做的SEO优化整理的一份文档

    今日给合作公司讲解本公司网站SEO优化整理的一份简单文档 架构 ########################################## 1.尽量避免Javascript和flash导航. ...

  9. Nginx+PHP-fpm高负载优化及压力测试方法

    Nginx+PHP-fpm组合,以内存占用小,负载能力强壮的特点,成为小内存VPS建站的首选组合.我们一起来探讨一下nginx+php-fpm高负载的优化方法. 先来看看nginx配置参数的优化.ng ...

随机推荐

  1. 本次作业统一标题:C语言I博客作业02

    这个作业属于哪个课程 C语言程序设计1 这作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/8655 我在这个课程的目标是 ...

  2. 深入理解SpringCloud之Gateway

    虽然在服务网关有了zuul(在这里是zuul1),其本身还是基于servlet实现的,换言之还是同步阻塞方式的实现.就其本身来讲它的最根本弊端也是再此.而非阻塞带来的好处不言而喻,高效利用线程资源进而 ...

  3. HTML5存储--离线存储

    离线存储技术 HTML5提出了两大离线存储技术:localstorage与Application Cache,两者各有应用场景:传统还有离线存储技术为Cookie. 经过实践我们认为localstor ...

  4. 1.InfluxDB-官方测试数据导入

    本文翻译自官网,官方文档地址:https://docs.influxdata.com/influxdb/v1.7/query_language/data_download/ 1.下载官网示例数据 命令 ...

  5. Spring Boot 2.X(八):Spring AOP 实现简单的日志切面

    AOP 1.什么是 AOP ? AOP 的全称为 Aspect Oriented Programming,译为面向切面编程,是通过预编译方式和运行期动态代理实现核心业务逻辑之外的横切行为的统一维护的一 ...

  6. maven在线自动更新太慢怎么办?

    使用IDEA和Eclipse开发maven项目时,maven在添加一项新的依赖时,如果发现本地仓库没有,就会向位于国外服务器的中央仓库下载.如果所处网络没有翻墙,下载速度会慢到你想原地爆炸. 这个时候 ...

  7. Flask中的CBV以及正则表达式

    Flask中的CBV以及正则表达式 一.CBV def auth(func): def inner(*args, **kwargs): print('before') result = func(*a ...

  8. Kubernetes网络插件Flannel的三种工作模式

    跨主机通信的一个解决方案是Flannel,由CoreOS推出,支持3种实现:UDP.VXLAN.host-gw 一.UDP模式(性能差) 核心就是通过TUN设备flannel0实现(TUN设备是工作在 ...

  9. 数据挖掘:python数据清洗cvs里面带中文字符

    数据清洗,使用python数据清洗cvs里面带中文字符,意图是用字典对应中文字符,即key值是中文字符,value值是index,自增即可:利用字典数据结构没有重复key值的特性,把中文字符映射到了数 ...

  10. Java 异常处理的 20 个最佳实践,你知道几个?

    异常处理是 Java 开发中的一个重要部分,是为了处理任何错误状况,比如资源不可访问,非法输入,空输入等等.Java 提供了几个异常处理特性,以try,catch 和 finally 关键字的形式内建 ...