Skip to content

About

Annotated Nginx Source(中文)

Topics

Resources

Stars

622 stars

Watchers

42 watching

Forks

Latest commit

 

History

1,574 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

annotated_nginx

Annotated Nginx Source(中文)

简介

Nginx源码分析,注解代码,帮助学习Nginx。

  • 1.10增加了动态模块、http2、reuseport。
  • 1.11.x里的stream模块的变动较大,完善了阶段处理。
  • 1.14增加了mirror模块,支持gRPC。
  • 1.15.10增加了range listen,指令“ssl_certificate”可从变量里加载证书。
  • 1.17.0不再支持OpenSSL 0.98,limit_rate/proxy_upload_rate支持变量。
  • 1.21.4支持内核TLS(kTLS),要求使用OpenSSL3.0,Linux内核高于4.17。
  • 1.21.5支持更新的PCRE2,但向上的封装接口不变。
  • 1.25.0实验性支持HTTP/3。

请参考:

当前状态

Nginx 1.27.1

Git分支

分支 说明 注释
master Nginx开发版1.27.1 有
mainline Nginx开发版1.27.1 无
stable Nginx稳定版1.26.0 无

已注解

源码目录快捷入口

  • src - 70%,nginx源码目录
  • core - 90%,md5/sha1/crc等较简单的功能不关注
  • event - 90%,只注解核心模块和epoll,select/kqueue/ssl等不关注
  • http - 70%,少量modules目录里的具体功能模块有注释
  • os/unix - 80%,bsd/darwin/solaris等系统不关注
  • stream - 70%
  • misc - 100%

UML图解

UML图示

部分关键源码(目录分类)

core目录
event目录
http目录
http/modules目录
os/unix目录
stream目录
misc目录

部分关键源码(功能分类)

内存管理
数据结构
进程机制
事件机制
多线程机制
tcp(stream)处理
http处理

不注解

  • auto
  • mail

About

Annotated Nginx Source(中文)

Topics

Resources

Stars

622 stars

Watchers

42 watching

Forks

Releases

Packages

Used by

Contributors

Languages