2.nginx架构及工作流程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.nginx架构及工作流程相关的知识,希望对你有一定的参考价值。

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:检查缓存对象

            使用缓存元数据建立内存数据库

本文出自 “zxcvbnm玄烨” 博客,请务必保留此出处http://10764546.blog.51cto.com/10754546/1759131

以上是关于2.nginx架构及工作流程的主要内容,如果未能解决你的问题,请参考以下文章

nginx简介

Nginx架构模型及常用配置

Nginx的架构及工作流程

nginx+keepalived高可用及双主模式

ansible架构原理及工作流程

Spark SQL架构工作原理及流程解析