Nginx相关的内容有点延迟,趁着今天有空就给大家整理完,本篇文章来给大家把Nginx我们在工作中常用的配置来给大家分享下,希望能对大家有所帮助。

Nginx的优化配置

全局配置

选项 设置
user root root; 默认用户是nobody,如果nginx需要访问某些比如root类权限的文件,会提示403错误,修改这个可以通过root去访问
worker_processes 2;
worker_cpu_affinity 01 10
nginx默认是没有开启利用多核cpu的配置的。需要通过增加worker_cpu_affinity配置参数来充分利用多核cpu,cpu是任务处理,当计算最费时的资源的时候,cpu核使用上的越多,性能就越好。解释:01表示启用第一个CPU内核,10表示启用第二个CPU内核worker_cpu_affinity 01 10;表示开启两个进程,第一个进程对应着第一个CPU内核,第二个进程对应着第二个CPU内核。
error_log /var/log/nginx/error.log warn; 错误日志级别
worker_rlimit_nofile 20480; 更改worker进程的最大打开文件数限制, 如果没设置的话,这个值为操作系统的限制, 所以把这个值设高,这样nginx就不会有“too many open files”问题了。设置了这个后,修改worker_connections值时,是不能超过worker_rlimit_nofile的这个值(其实核心原因就是程序打开的文件/socket链接数量超过系统设定值)
use epoll; 使用epoll的I/O模型,这个不用说了吧。{select/pool/kqueue/epool ; select、poll是标准工作模式、kquque、epoll是搞笑工作模式,epoll是用在linux系统。kqueue是用在bsd系统(unix的衍生系统)
worker_connections 20480; nginx默认的并发连接数是1024,如果网站访问量过大,就需要调整这个值,值越大能够支撑的并发数也就越大。但是最终的天花板是CPU; 理论上每台nginx服务器的最大连接数为worker_processes*worker_connections
accept_mutex off; 当一个新连接到达时,如果激活了accept_mutex,那么多个Worker将以串行方式来处理,其中有一个Worker会被唤醒,其他的Worker继续保持休眠状态;如果没有激活accept_mutex,那么所有的Worker都会被唤醒,不过只有一个Worker能获取新连接,其它的Worker会重新进入休眠状态,这就是「惊群问题」。假设你养了一百只小鸡,现在你有一粒粮食,那么有两种喂食方法:你把这粒粮食直接扔到小鸡中间,一百只小鸡一起上来抢,最终只有一只小鸡能得手,其它九十九只小鸡只能铩羽而归。这就相当于关闭了accept_mutex。你主动抓一只小鸡过来,把这粒粮食塞到它嘴里,其它九十九只小鸡对此浑然不知,该睡觉睡觉。这就相当于激活了accept_mutex。可以看到此场景下,激活accept_mutex相对更好一些,让我们修改一下问题的场景,我不再只有一粒粮食,而是一盆粮食,怎么办?此时如果仍然采用主动抓小鸡过来塞粮食的做法就太低效了,一盆粮食不知何年何月才能喂完,大家可以设想一下几十只小鸡排队等着喂食时那种翘首以盼的情景。此时更好的方法是把这盆粮食直接撒到小鸡中间,让它们自己去抢,虽然这可能会造成一定程度的混乱,但是整体的效率无疑大大增强了。
include /etc/nginx/mime.types; 这里我们使用它来加载文件扩展名与文件类型映射表。nginx根据映射关系,设置http请求响应头的Content-Type值。当在映射表找不到时,使用nginx.conf中default-type指定的默认值。
default_type application/octet-stream; 指定默认类型为二进制流,也就是当文件类型未 定义时使用这种方式
sendfile on; 开启高效传输模式
keepalive_timeout 60; http连接的超时时间
include extra/*.conf; 通过不同配置文件进行管理

extra/upstream.conf

upstream gupaoedu{server   192.168.11.152:8080;server   192.168.11.153:8080;
}

extra/vhost.conf

server {listen       80;server_name  www.gupao.comaccess_log   off;error_log    off;location / {proxy_pass                http://gupaoedu;        #选择对应的负载均衡配置 proxy_read_timeout        60;    #与后端处理机timeout时间一致; 该指令设置与代理服务器的读超时时间。它决定了nginx会等待多长时间来获得请求的响应     proxy_connect_timeout     60;     #该指令设置与upstream server的连接超时时间,有必要记住,这个超时不能超过75秒proxy_send_timeout        60; 这个指定设置了发送请求给upstream服务器的超时时间。超时设置不是为了整个发送期间,而是在两次write操作期间。如果超时后,upstream没有收到新的数据,nginx会关闭连接proxy_set_header          Host             $host;  #设置头信息proxy_set_header          X-Real-IP       $remote_addr;   #设置头信息}
}

Nginx的优化配置相关推荐

  1. Nginx网页优化及防盗链__gw

    Nginx网页优化及防盗链 Nginx服务优化 配置Nginx隐藏版本号 方法一 方法二 修改nginx用户和组 网页缓存时间 Nginx的日志分割 编写日志分割脚本 制作任务计划 链接超时 更改Ng ...

  2. nginx 带宽_Nginx优化配置,轻松应对十万并发

    Nginx现在已经是最火的web服务器之一,尤其在静态分离和负载均衡方面,性能十分优越.接下来我们主要看下Nginx在高并发环境下的优化配置,主要是针对 nginx.conf 文件的属性设置.我们打开 ...

  3. nginx反向代理配置及优化

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://liuyu.blog.51cto.com/183345/166381 nginx反 ...

  4. Nginx 服务并发过10万的Linux内核优化配置

    以下Linux 系统内核优化配置均经在线业务系统测试,服务器运行状态良好,用了一些时间整理,现和大家分享一下,如有那位高人看到配置上有问题,请给与指出! Controls the use of TCP ...

  5. Nginx静态资源优化配置之sendfile

    静态资源优化配置语法 Nginx对静态资源如何进行优化配置.这里从三个属性配置进行优化: sendfile on; tcp_nopush on; tcp_nodeplay on; (1)sendfile ...

  6. nginx log response_nginx优化配置大全

    很多程序员面试被问到nginx优化做过哪些,因此来记录下 配置文件样例为生产环境样例. 1.nginx基本优化 安装方式有2种: 1.源码包安装 2.yum(apt-get)安装 区别为如果用yum安 ...

  7. nhinx php 调优,高流量站点NGINX与PHP-fpm配置优化

    本文由LinuxProbe.Com团队成员岳国帅整理发布,原文来自:黑·白. 导读 使用Nginx搭配PHP已有7年的经历,这份经历让我们学会如何为高流量站点优化NGINX和PHP-fpm配置. 以下 ...

  8. nginx优化配置选项

    Nginx以事件驱动(epoll)的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理.负载平衡.但是Nginx并不支持cgi方式运行,原因是可以减少因此带来的一些程序上的漏洞.所以必须使用 ...

  9. 高流量站点NGINX与PHP-fpm配置优化

    导读 使用Nginx搭配PHP已有7年的经历,这份经历让我们学会如何为高流量站点优化NGINX和PHP-fpm配置. 以下正是这方面的一些提示和建议: 1. 将TCP切换为UNIX域套接字 1. 将T ...

最新文章

  1. hdoj1087 (DP--LIS)
  2. [YTU]_2760( 字符串---首字母变大写)
  3. Mybatis多参数封装到一个类中模糊查询
  4. Linux 如何加载并口/打印口驱动
  5. VMware ESXI 虚拟磁盘工具 - vmkfstools 使用实例
  6. 用R命令看一下各个寄存器的设置情况
  7. Xshell使用教程
  8. 新浪邮箱文件下载php,免费邮箱大全收集-国内篇
  9. linux网卡驱动probe函数详解
  10. 魅族系统怎么无需root激活Xposed框架的经验
  11. 华为防火墙安全策略-1
  12. Python基础练习-每日一题-大家来找茬!
  13. 关于 IE 浏览器打开时速度过慢的问题
  14. scala时间处理-获取今天日期,昨天日期,本周时间,本月时间,时间戳转换日期,时间比较
  15. python爬取千图网图片(出现HTTP Error 403怎么解决)
  16. WPF入门教程(一)---基础
  17. 微信公众号扫一扫功能vue配置
  18. 2048AI设计与实现
  19. 院士李德毅:大数据认知(演讲全文)
  20. padStart与padEnd方法

热门文章

  1. cython大白话基础教程
  2. 新手java练习题100(1-5)
  3. 微波射频学习笔记17-------LC谐振的验证和LC滤波器原理
  4. [机器学习]概率图模型
  5. 哈夫曼树及哈夫曼编码(考试常考版)
  6. utl raw mysql_oracle中utl_raw
  7. js如何实现拆分字符串并依次输出
  8. WPF 海康威视网络摄像头回调方式实现断连提示,降低时延
  9. FileZilla FTP Server FTP over TLS settings 设置FTP服务器证书启用FTPS 【转载】
  10. SSM+智能家居产品销售管理 毕业设计-附源码161618