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 才有效

修改位置

查看错误文件

原文地址:https://www.cnblogs.com/Mrchengs/p/11936109.html