Nginx 之 全局配置段介绍

1  概述

Nginx的配置段不一样,同一指令的用法不一样。关于nginx更详细的配置,可以查看官方帮助文档http://nginx.org/en/docs/,本文将介绍全局配置段常见的配置指令

2  全局配置段

Main全局配置段常见的配置指令分类:

.正常运行必备的配置

.优化性能相关的配置

.用于调试及定位问题相关的配置

.事件驱动相关的配置

全局性的配置一般比较少改动,默认选项可以满足一般的需求,可以根据实际情况进行调整

​2.1正常运行必备的配置

.1、user

Syntax:user user [group];

例子:

user nginx;

Default:user nobody nobody;

Context:main

指定worker进程的运行身份,如组不指定,默认和用户名同名

.2、pid  /PATH/TO/PID_FILE

指定存储nginx主进程PID的文件路径

pid /run/nginx.pid;

.3、includefile | mask

指明包含进来的其它配置文件片断

例子:

include  /usr/share/nginx/modules/*.conf;

.4、load_module  file

模块加载配置文件:/usr/share/nginx/modules/*.conf

指明要装载的动态模块路径: /usr/lib64/nginx/modules

2.2性能优化相关的配置

.1、worker_processes  number | auto

auto和number的区别

auto 是nginx根据系统当前的情况开启进程数,模式是1个主进程,4个worker进程

number是人为指定开启进程数量,比如设置8,那么总共是1个主进程,7个worker进程

这里number不建议加太多,worker进程的个数通常应该为当前主机的cpu的物理核心数,可以略少,因为nginx是一个进程响应多个请求,不是线程处理。

.2、worker_cpu_affinity  cpumask ...

worker_cpu_affinity  auto [cpumask]提高缓存命中率,机器运行时,内核的数量只能增加不能减少,如果要减少内核数,需要停机才能设置

CPU MASK:

00000001:0号CPU

00000010:1号CPU

10000000:8号CPU

例子

假设有4个内核,那么,内核的编号是0,1,2,3.设置如下,

worker_cpu_affinity 0001 0010 1000 0100;

表示

第一个进程工作在0号内核

第二个进程工作在1号内核

第三个进程工作在3号内核

第四个进程工作在2号内核

如果这里设置为0000,则表示对应的进程不指定内核,随机工作在某个内核上。

正常情况下,主进程是随机工作在任意进程下的

进程具体工作在哪个内核,可以通过如下的命令进行查看

ps axo pid,cmd,psr,ni |grep nginx

.3、worker_priority   number

指定worker进程的nice值,设定worker进程优先级:[-20,20],值越小,优先级越高

.4、worker_rlimit_nofile  number

worker进程所能够打开的文件数量上限,如65535

同时连接的数量受限于系统上可用的文件描述符的数量,因为每个套接字将打开一个文件描述符。如果NGINX尝试打开比可用文件描述符更多的套接字,会发现error.log中出现Too many opened files的信息。使用ulimit检查文件描述符的数量:$ ulimit -n。现在,将此值增加到大于worker_processes *worker_connections的值。应该是增加当前worker运行用户的最大文件打开数值。NGINX提供了worker_rlimit_nofile指令,这是除了ulimit的一种设置可用的描述符的方式。该指令与使用ulimit对用户的设置是同样的效果。此指令的值将覆盖ulimit的值,如:

worker_rlimit_nofile 20960;

2.3  事件驱动相关的配置

event

语法如下

.events {

...

}

events放在主配置文件里

.1、worker_connections  number

每个worker进程所能够打开的最大并发连接数数量,如10240

这个参数建议调大点,如果请求太多,导致客户连接不上而已,不至于浪费了资源

总最大并发数:worker_processes* worker_connections

.2、use method

指明并发连接请求的处理方法,默认自动选择最优方法,为epoll.

默认:useepoll;不需要配置

.3、accept_mutex   on | off互斥

处理新的连接请求的方法;on指由各个worker轮流处理新请求,off指每个新请求的到达都会通知(唤醒)所有的worker进程,但只有一个进程可获得连接,造成“惊群”,影响性能,默认on

2.4调试和定位问题

.1、daemon on|off

是否以守护进程方式运行nignx,默认是守护进程方式.如果是off就是前端运行。默认是守护进程on,为后台执行

.2、master_process  on|off

是否以master/worker模型运行nginx;默认为on,如果设置为off将不启动worker进程,主要是开发环境使用,关闭后没有worker进程,只有master提供服务。需要重启nginx服务后生效

.3、error_log  file [level]

错误日志文件及其级别;出于调试需要,可设定为debug;但debug仅在编译时使用了“--with-debug”选项时才有效

方式:file /path/logfile;

stderr:发送到标准错误

syslog:server-address[,parameter=values]:发送到syslogmemory:size内存

level:debug|info|notice|warn|error|crit|alter|emerg

例子

error_log  /var/log/nginx/error.log;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容

  • 1. Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单...
    rosekissyou阅读 10,126评论 5 124
  • Nginx简介 解决基于进程模型产生的C10K问题,请求时即使无状态连接如web服务都无法达到并发响应量级一万的现...
    魏镇坪阅读 1,958评论 0 9
  • 第一章 Nginx简介 Nginx是什么 没有听过Nginx?那么一定听过它的“同行”Apache吧!Ngi...
    JokerW阅读 32,462评论 24 1,003
  • 配置运行Nginx服务器用户(组) 用于配置运行Nginx服务器用户(组)的指令是user,其语法格式为: use...
    吃瓜的东阅读 4,405评论 0 41
  • 1.简介:  Nginx:engine X ,2002年,开源,商业版 http协议:web服务器(类似于ht...
    尛尛大尹阅读 1,828评论 0 3