22、Nginx core 模块

深入解析Nginx核心模块的启动流程,包括从main函数开始的时间、正则、SSL初始化,配置解析,共享内存创建,端口监听到最终worker进程启动的完整过程。适合后端开发者和运维工程师学习Nginx内部原理。

core 模块

Nginx 的启动模块

启动模块从启动 Nginx 进程开始,做了一系列的初始化工作,源代码位于src/core/nginx.c,从 main 函数开始:

  • 时间、正则、错误日志、ssl 等初始化
  • 读入命令行参数
  • OS 相关初始化
  • 读入并解析配置
  • 核心模块初始化
  • 创建各种暂时文件和目录
  • 创建共享内存
  • 打开 listen 的端口
  • 所有模块初始化
  • 启动 worker 进程