高性能Web服务器Nginx
Nginx是一个高性能的HTTP反向代理和负载均衡服务器,一台IMAP/POP3/SMTP代理服务器,可以运行在UNIX,GNU/Linux,BSD,Mac OS X,Solaris,Microsoft Windows。
Nginx的组成与工作原理
Nginx由内核和模块组成。内核通过查找配置文件将客户端请求映射到一个location block中,在这个location中所配置的不同命令将会启动不同的模块进行工作。
Nginx模块从结构上划分
Nginx的模块从结构上可以划分为核心模块、基础模块和第三方模块,其中HTTP模块、Mail模块、Event模块都属于核心模块,HTTP ACCESS,HTTP FASTCGI,HTTP proxy和HTTP Rewrite模块都属于基础模块,用户根据自己需要开发的模块都属于第三方模块
Nginx模块从功能上划分
Handler 处理器模块 此模块直接处理请求,handlers处理器模块一般只有一个
Proxies 代理类模块 Nginx的HTTP Upstream之类的模块,这些模块主要与后端服务比如fastcgi等操作交互,实现服务代理和负载均衡功能。
Filters 过滤器模块 此模块对其他模块的输出内容进行修改
Nginx的工作方式
Nginx分为单工作进程和多工作进程,但工作进程只有一个单线程的工作进程,有多个线程的工作进程
Nginx的模块被直接编译进Nginx,因此属于静态编译方式
启动Nginx之后,自动加载Nginx的模块,解析配置文件