您的位置:首页 > 运维架构 > Nginx

2.nginx架构及工作流程

2016-04-01 11:30 543 查看
nginx是模块化设计:
模块大致可以分为:
1.核心模块(core)
2.基础模块(http,mail)
3.第三方模块(upstream,proxy,fastcgi)
功能:1.核心模块为nginx作为webserver,web or mail proxy提供一个大的基础
2.基础模块是核心模块与扩展模块的抽象衔接,同时完成某协议的功能
3.第三方模块,在对应基础模块的基础上,完成特定功能

nginx架构:




nginx对于一个http请求的处理流程:
1.tcp/ip连接建立
2.woerker进程接受请求,按配置文件(主要是location)触发不同的hander和filter
按pipeline流程处理
3.第一个hander处理,结果放置在内存某处
4.第二个hander读取结果,继续处理(hander可以理解为upstream这些模块)
......
5.filter处理hander处理之后的内容,对报文主体和头部进行相应的操作(比如gzip)
......
6.构建响应发送



nginx的进程类型:
master进程
worker进程
cache loader
cache manager

nginx进程的作用:
master:1.读取配置文件
2.创建,绑定,销毁套接字文件
3.启动,终止,维护worker进程数量
4.平滑升级,日志滚动
worker:接收处理请求
cache manager:缓存的失效清理和过期检验
cache loader:检查缓存对象
使用缓存元数据建立内存数据库
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx架构