1.MemPool


首先我们来看一下他的一个基础组件:内存池组件。为什么先从内存池开始呢,因为后面 nginx 的内置数据结构,如:array,string 等都是从内存池分配的。 为什么需要内存池呢?在高并发的前提下,会大量地申请和释放小块的内存;虽然内核中也有相关的内存优化操作,但是还是容易出现大量地内存碎片,内存

Begin


Directory Tree 可以看到 nginx 的源码目录结构如图所示,下面会阅读一下 nginx 主要的源代码,给出注释和运行逻辑。