Skip to content

nginx-1.9.2源码通读分析注释,带详尽函数中文分析注释以及相关函数流程调用注释,最全面的nginx源码阅读分析中文注释,持续更新

License

Notifications You must be signed in to change notification settings

wypx/reading-code-of-nginx-1.9.2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

reading-code-of-nginx-1.9.2

nginx-1.9.2代码理解及详细注释

为什么阅读nginx源码? 崇拜nginx的高并发性能。

由于平时工作中也主要做服务器端开发,加上喜欢研究开源源码,因此在周末及下班空余时间拜读下nginx源码。

7月底从nginx官网下载了最新源码,在开始读源码前对官网的主要英文文档做了大概阅读,然后开始正式阅读代码。

nginx的以下功能模块的相关代码已经阅读,并对其源码及相关数据结构进行了详细备注,主要参考书籍为淘宝陶辉先生 的《深入理解Nginx:模块开发与架构解析》,并对书中没有讲到的相关部分功能进行了扩展,通过边阅读边调试的方法 通读了以下功能模块,并对其进行了详细的注释,同时加了自己的理解在里面,注释比较详细,由于是周末和下班时间阅读,再加上自己 文采限制,代码及数据结构注释都比较白话,注释中肯定会有理解错误的地方。

截止15.9.19,已经分析并注释完成的主要功能如下: .配置编译过程中相关脚本调用过程详细注释 .用户自由模块编译添加过程 .nginx使用的进程间通信方式(包括共享内存 原子操作 自旋锁 信号 信号两 文件锁 互斥锁 channel通信) .nginx自定义高级数据结构详解(队列 链表 红黑树 散列表等) .配置文件解析流程 .nginx启动、退出过程分析 .连接池 内存池分配管理过程 .对客户端链接如何实现负载均衡,“惊群”问题避免 .主动链接 被动链接过程分析 .epoll事件驱动机制,epoll模型详解,包括读写异步非阻塞处理机制及流程。 .时间机制及定时器详解. .异步I/O,sendfile代码分析 .http框架处理流程及11个阶段处理及调用过程 .HTTP请求行、请求头部、包体异步读取解析过程 .HTTP异步非阻塞发送HTTP头部和包体过程 .HTTP阻塞任务如何拆分。 .任务处理完毕执行流程。 .资源回收过程

15.10.2 nginx变量(内部自定义变量以及配置文件中添加的变量)的定义解析过程分析。 脚本引擎代码分析 nginx十一个阶段处理重新详细分析。 rewrite机制详细分析,以及location{}定位进行进一步分析。

About

nginx-1.9.2源码通读分析注释,带详尽函数中文分析注释以及相关函数流程调用注释,最全面的nginx源码阅读分析中文注释,持续更新

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 90.2%
  • Lua 3.2%
  • HTML 2.6%
  • C++ 0.9%
  • Objective-C 0.7%
  • Assembly 0.7%
  • Other 1.7%