Nginx 读音'Engine X',很多工程师也喜欢读成'恩基克思'。nginx是一款高性能的HTTP和反向代理服务器软件,第一个开源版本诞生于2004年,虽然诞生较晚但经过十多年的发展,已经成为非常流行的web服务器软件
Nginx 和 Apache 相同点:
同是HTTP服务器软件,都采用模块化结构设计
支持通用语言接口,如PHP,Python等
支持正向代理和反向代理
支持虚拟主机及ssl加密传输
支持缓存及压缩传输
支持URL重写
模块多,扩展性强
多平台支持
同是HTTP服务器软件,都采用模块化结构设计
支持通用语言接口,如PHP,Python等
支持正向代理和反向代理
支持虚拟主机及ssl加密传输
支持缓存及压缩传输
支持URL重写
模块多,扩展性强
多平台支持
Nginx的优势
轻量级 安装文件小 运行时CPU内存使用率低
性能强 支持多核,处理静态文件效率高,内核采用的poll模型最大可以支持50K并发连接
支持热部署 同时启动速度快,可以在不间断服务的情况下对软件和配置进行升级
负载均衡 支持容错和健康检查
代理功能强大 支持无缓存的反向代理,同时支持IMAP/POP3/SMTP的代理
Nginx 的劣势
相比Apache 模块要少一些,常用模块都有了,而且支持LUA语言扩展功能
对动态请求支持不如apache
Windows 版本功能有限 ,受限于windows的特性,支持最好的还是*unix系统
Nginx工作原理
Nginx由内核和一系列模块组成,内核提供web服务的基本功能,如启用网络协议,创建运行环境,接收和分配客户端请求,处理模块之间的交互。Nginx的各种功能和操作都由模块来实现。
Nginx的模块从结构上分为核心模块、基础模块和第三方模块。
核心模块: HTTP模块、EVENT模块和MAIL模块
基础模块: HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块
第三方模块: HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块及用户自己开发的模块
© 走过岁月...... | Powered by LOFTER