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:检查缓存对象
使用缓存元数据建立内存数据库
模块大致可以分为:
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:检查缓存对象
使用缓存元数据建立内存数据库
相关文章推荐
- 手把手让你实现开源企业级web高并发解决方案(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)
- 手把手让你实现开源企业级web高并发解决方案(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)续 推荐
- Nginx架构及其web服务搭建优化配置详解
- nginx处理别人域名解析到你的ip
- Linux & Nginx 性能参数调优
- Centos 6.5 编译安装Nginx-1.5.13+php-5.5.10+Mysql-5.5.37
- Nginx学习(四):简单的负载均衡配置
- Nginx学习(二):nginx.conf学习
- 高流量站点NGINX与PHP-fpm配置优化
- 1.2 nginx编译安装
- 1.7nginx用户认证
- 1.8 nginx域名跳转
- 1.9 nginx不记录指定文件类型的日志
- 2.0 nginx日志切割
- Nginx安装与使用
- nginx+keepalive 实现高可用负载均衡方案
- 实现一个线程池
- mac问题小笔记
- 使用ngxtop统计nginx请求
- 随机修改nginx端口脚本及思路