- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 nginx-0.8.38源码探秘(六)
开始进入ngx_http_core_run_phases函数,它循环调用各http phase的checker。
2010-09-26 02:00:00
1813
原创 nginx-0.8.38源码探秘(五)
前面把初始化流程分析完成,可以发现,nginx是先把各模块的指令初始化完成后,再初始化子进程,最后等待客户请求到来。下面开始分析nginx的处理流程。
2010-09-23 18:18:00
1750
原创 nginx-0.8.38源码探秘(四)
回到ngx_init_cycle函数,遍历NGX_CORE_MODULE模块,调用它们注册的init_conf钩子。只有ngx_core_module模块注册了这个钩子-----ngx_core_module_init_conf,初始化ngx_core_conf_t结构,获取用户名,用户id,组id,设置lockfile文件。 ngx_open_listening_sockets函数创建套接口,设置套接口选项,如果不使用AIO,则设置为非阻塞套接口,最后listen。
2010-09-17 00:45:00
1686
原创 nginx-0.8.38源码探秘(三)
ngx_http_block函数是对整个HTTP相关模块的构建和初始化。首先映入眼帘的是四个结构:ngx_http_conf_ctx_t,ngx_http_core_loc_conf_t,ngx_http_core_srv_conf_t,ngx_http_core_main_conf_t,理解这些结构的成员可以查看网址:http://wiki.nginx.org/NginxChsHttpCoreModule,thanks wiki again and again。
2010-09-12 01:30:00
2189
原创 nginx-0.8.38源码探秘(二)
继续分析ngx_init_cycle函数,该函数以init_cycle作为实参,而ngx_cycle是指向它的。ngx_init_cycle一上来就是更新时区和时间,why?必要吗?紧跟着创建一个NGX_CYCLE_POOL_SIZE大小的内存池,并在该内存池上创建了新的cycle(类型为ngx_cycle_t),然后初始化成员pool、log、new_log、conf_prefix、prefix、conf_file、conf_param、pathes、open_files、shared_memo
2010-09-10 01:19:00
1464
原创 nginx-0.8.38源码探秘(一)
网上分析nginx源码的文章很多,但感觉分析的不够具体和完整,而且都是比较老的nginx版本。本源码分析基于nginx-0.8.38版本,力求做到更具体和更完整,这是一种自我学习,希望和对此有兴趣的朋友一起探讨,有不正确的地方,也请各位指正。
2010-09-09 01:33:00
3093
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人