nginx 核心配置

下面是一个简单的 nginx 配置文件:

user www www;
worker_processes 2;

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

events {
    use kqueue;
    worker_connections 2048;
}

上面配置文件中,分别使用了 user、worker_processes、error_log、events、use、worker_connections 六个指令,这些指令都是 nginx 提供的核心功能。

下面表格将逐一介绍 nginx 核心功能的每一个指令的含义和具体用法。核心功能如下表:

指令描述
accept_mutex 指令配置 nginx 工作进程是否将依次接受新连接
accept_mutex_delay 指令accept 锁后到真正建立链接之间的延迟时间,默认为500ms
daemon 指令设置 nginx 是否采用守护进程进行运行
debug_connection 指令为指定的客户端连接启用调试日志,通过 IP 或者域名指定
debug_points 指令用于 nginx 调试,可用来帮助用户调试 nginx
env 指令配置环境变量
error_log 指令配置日志记录
events 指令nginx 连接处理配置块
include 指令用来将另一个文件或与指定 mask 匹配的文件包含到配置中
load_module 指令加载动态模块
lock_file 指令nginx 使用锁定机制来实现 accept_mutex 并序列化对共享内存的访问
master_process 指令确定是否启动工作进程
multi_accept 指令如果 multi_accept 被禁用,一个工作进程将一次接受一个新连接
pcre_jit 指令配置解析时已知的正则表达式启用或禁用 “即时编译(just-in-time compilation)” (PCRE JIT)
pid 指令定义存储主进程进程 ID 的文件
ssl_engine 指令定义硬件 SSL 加速器的名称
thread_pool 指令定义用于多线程读取和发送文件而不阻塞工作进程(worker processes)的线程池的名称和参数
timer_resolution 指令降低工作进程中的计时器(timer)的解析,从而减少 gettimeofday() 系统调用的次数
use 指令指定要使用的连接处理方法
user 指令定义工作进程使用的用户(user)和组(group)凭据
worker_aio_requests 指令使用 aio 和 epoll 连接处理方式时,设置单个工作进程(worker process)的最大未完成异步 I/O 操作
worker_connections 指令设置工作进程(worker process)可以打开的最大同时连接数
worker_cpu_affinity 指令将工作进程绑定到 CPU 集,每个 CPU 集由允许的 CPU 的位掩码表示
worker_priority 指令定义工作进程的调度优先级
worker_processes 指令定义工作进程的数量
worker_rlimit_core 指令更改工作进程的核心文件的最大大小 (RLIMIT_CORE) 的限制
worker_rlimit_nofile 指令更改工作进程的最大打开文件数 (RLIMIT_NOFILE) 的限制
worker_shutdown_timeout 指令为优雅关闭工作进程配置超时时间
working_directory 指令定义工作进程(worker process)的当前工作目录
说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号