Nginx 全局配置
nginx的配置
Main全局配置段常见的配置指令分类
1、正常运行必备的配置
2、优化性能相关的配置
3、用于调式及定位问题的相关配置
4、时间驱动相关的配置
帮助文档:
http://nginx.org.en/docs/
全局配置文件的地方
1、正常运行必备的配置
◆正常运行必备的配置 :
◆帮助文档: http://nginx.org/en/docs/ngx_ core. module.html
➢1、user
Syntax: user user [group];
Default: user nobody nobody;
Context: main
指定worker进程的运行身份,如组不指定,默认和用户名同名
➢2、pid /PATH/TO/PID_ FILE
指定存储nginx主进程PID的文件路径
➢3、include file| mask
指明包含进来的其它配置文件片断
➢4、load_ module file
模块加载配置文件: /usr/share/nginx/modules/*.conf
指明要装载的动态模块路径: /usr/lib64/nginx/modules
1.1、user
使用ps -aux进行查看相关的服务
修改配置user
进行语法检测以及配置文件的重新加载
查看服务进程
系统默认使用nginx即系统在安装时就进行创建账号
1.2、pid
进行的编号(master)
服务一旦停止文件立即消失
只有在服务启动时候才会生成文件
1.3、load_modules
主要的为二级文件都存放在usr/shaer/nginx/READE.dynamic中
2、性能优化相关配置
➢1、worker processes nymber | auto
worker进程的数量;通常应该为当前主机的cpu的物理核心数
➢2、worker_ cpu _affinity cpumask..
worker _cpu_ affinity auto [qpumask]提高缓存命中率
CPU MASK : 00000001 : 0号CPU
00000010 : 1号CPU
10000000 : 8号CPU
worker_ cpu affinity 0001 0010 0100 1000;
worker_ .cpu_ _affinity 0101 1010;
➢3、worker_ priority number
指定worker进程的nice值,设定worker进程优先级: [-20,20]
➢4、worker_ rlimit_ nofile number
worker进程所能够打开的文件数量上限,如65535
2.1、worker_process
默认值是auto
此时修改值为auto
根据内核来计算的
2.2、worker_cpu_affinity auto
提高缓存的命中率
CPU MASK :
00000001:0号cpu
00000010:1号cpu
10000000:8号cpu
主要观察1的位置
worker_cpu_affinity 00001 0010 0100 1000;
是要根据worker_press中的数量进行相关的计算
此时令其等于2
查看相关nginx的服务工作地址
ps axo pid,cmd,psr|grep nginx
可以使用watch -n ''去监控查看相关的端口号变化
在某些条件下的cpu会发生改变
此时则需要进行固定可以提高cpu的缓存利用率
修改配置文件
查看相关的绑定
2.3、worker_priority number
相关优先级
查看优先级
ps axo pid,cmd,psr,nice|grep nginx
默认优先级是0
优先级范围是-20 ~ 20
进行修改优先级
修稿之后的优先级
2.4、worker_rlimit
进程能够打开的文件数量上限如65535
希望能够支持多个用户并发
可以服务多少个用户进程
3、事件驱动相关配置
➢events{
......
}
➢1、worker_ connections number
每个worker进程所能够打开的最大并发连接数数量,如10240
总最大并发数: worker_ processes * worker_ connections
➢2、use method
指明并发连接请求的处理方法,默认自动选择最优方法use epoll;
➢3、accept_ mutex on| off互斥
处理新的连接请求的方法; on指由各个worker轮流处理新请求
Off指每个新请求的到达都会通知(唤醒)所有的worker进程
但只有一个进程可获得连接 ,造成“惊群”,影响性能
3.1、worker_connections number
每个worker的能够打开的最大并发链接数据
worker_rlimit = worker_processes * worker_connections
3.2、use method
指明并发链接请求的处理方法
默认自动选择最优方法
use epoll;
3.3、accept_mutex on|off 互斥
处理请求的链接请求的方法
on指由各个worker轮流处理请求
off指每个请求的到达都会通知所有的worker进程,但是只有一个进程可以获得链接,造成“精群”,影响性能
4、调式和定位问题
➢1、daemon: on|off
是否以守护进程方式运行nignx ,默认是守护进程方式
➢2、master_ process on|off
是否以master/worker模型运行nginx ;默认为on
off将不启动worker
➢3、error_ log file [level]
错误日志文件及其级别;出于调试需要,可设定为debug ;但debug仅在编译时
使用了"--with-debug" 选项时才有效
方式: file /path/logfile;
stderr:发送到标准错误
syslog:server- address[parameter =values]:发送到syslog memory:size内存
level:debuglinfo|notice|warnlerrorlcritlalterlemerg
4.1、daemon on|off
是否以守护进程的方式运行nginx
默认时守护进程
即可以后台运行
进行修改为off
服务就会在前台运行
4.2、master_process on|off
是否已master/worker模型运行nginx 默认为on
off将不启动worker
进行修改文件
此时查看相关进程
此时就是独立的进程没有work进程
4.3、error_log file[level]
错误日志即级别
处于调试的需要
可以设定为debug,但debug仅在编译时使用了 --with-debug 才有效
修改位置
查看错误文件