nginx介绍

来源:互联网 发布:淘宝企业店铺怎么注销 编辑:程序博客网 时间:2024/05/09 07:50

Nginx (“engine x”)是一个高性能的 HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
特点:
高并发:能够支持高达50000个并发连接的响应数
低内存消耗:10000个非活跃的HTTP Keep-Alive连接在nginx中仅消耗2.5M的内存
热部署:可以在7*24小时不间断服务的前提下,进行nginx版本的平滑升级,nginx配置文件的平滑修改
安装配置简单:用C语言实现,有自己的函数库,除了zlib、pcre和openssl外,标准模块只使用系统C库函数,只要有gcc编译即可,无其他第三方库,安装简单。Nginx配置文件简单,可以灵活配置
健康检查:Nginx作为反向代理服务器时,可以检测后台服务器的监控状态,可以将宕机的机器从upstream中剔除
支持第三方扩展:第三方扩展模块极大的丰富了nginx的功能。

这里写图片描述

这里写图片描述

master进程功能:
充当整个进程组与用户的交互接口
接收来自外界的信号,向各worker进程发送信号
监控woker进程的运行状态,worker异常退出自动重启
管理worker进程来实现重启服务、平滑升级、更换日志文件、配置文件实时生效等功能

Nginx由内核和模块组成
Nginx的模块从结构上分为核心模块、基础模块和第三方模块:
核心模块:HTTP模块、EVENT模块和MAIL模块
基础模块:HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块,
第三方模块:HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块。
用户根据自己的需要开发的模块都属于第三方模块。正是有了这么多模块的支撑,Nginx的功能才会如此强大。

Nginx的模块从功能上分为如下三类。
Handlers(处理器模块):此类模块直接处理请求,并进行输出内容和修改headers信息等操作。Handlers处理器模块一般只能有一个。
Filters (过滤器模块):此类模块主要对其他处理器模块输出的内容进行修改操作,最后由Nginx输出。
Proxies (代理类模块):此类模块是Nginx的HTTP Upstream之类的模块,这些模块主要与后端一些服务比如FastCGI等进行交互,实现服务代理和负载均衡等功能。

0 0