- 博客(5)
- 收藏
- 关注
原创 Nginx源码分析 - 主流程篇 - 解析配置文件(13)
Nginx源码中比较重要的一块就是配置文件的解析。一般是解析/usr/local/nginx/conf/nginx.conf文件中的配置信息。前一篇文章,我们介绍了Nginx的模块化。Nginx的功能模块都是通过cycle->modules 模块进行管理的。而每个模块都会有自己的配置文件。
2016-07-14 18:47:30 15396 5
原创 Nginx源码分析 - 主流程篇 - 模块的初始化(12)
Nginx是高度模块化的,各个功能都会封装在模块中。例如core模块、HTTP模块等。也可以自定义模块。这一篇文章主要讲解模块的初始化。后续会有一篇文章教你如何编写Nginx的模块。Nginx实现模块管理的代码主要在:/src/core/ngx_module.c文件中。模块的数据结构结构体ngx_module_s主要用于管理每一个模块的详细信息。而模块的管理,主要放置在Nginx的全局变量cycl
2016-07-13 17:03:10 12485 2
原创 Nginx源码分析 - 主流程篇 - 全局变量cycle初始化(11)
Nginx的大部分初始化工作主要围绕一个类型为ngx_cycle_t类型的全局变量(cycle)展开。本文主要讲解cycle的数据结构以及初始化过程中干了什么事情。cycle的初始化过程在/src/core/cycle.c文件中。数据结构ngx_cycle_t的数据结构/** * Nginx全局变量cycle */struct ngx_cycle_s { void
2016-07-11 17:54:21 10602
原创 Nginx源码分析 - 主流程篇 - 平滑重启和信号控制(10)
平滑重启上一篇文章我们分析了Nginx的启动流程。其中ngx_add_inherited_sockets主要用于继承Socket文件句柄。Nginx有平滑重启的功能,通过平滑重启,可以让用户无感知并且不中断。#平滑重启 sudo kill -HUP `cat /usr/local/nginx-1.4.7/nginx.pid` 无感知不中断的过程,就需要Nginx继承原先的so
2016-07-06 18:56:36 11101
原创 Nginx源码分析 - 主流程篇 - Nginx的启动流程(09)
前几篇主要介绍了Nginx比较常用的一些基础数据结构,例如pool,buf,array,list等。通过对Nginx基础数据结构的理解,能更好的帮助我们读懂整个Nginx的源代码。这一章节开始主要分析Nginx的主流程。Nginx的主流程的实现函数在./src/core/nginx.c文件中。通过main()函数,我们可以窥探整个Nginx启动的流程。Nginx的启动过程m
2016-07-05 15:46:12 20628
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人