天成1 发表于 2018-11-14 12:28:31

Nginx 的模块与工作原理

  本文是学习《高性能 Linux 服务器构建实战:运维监控、性能调优与集群应用》笔记。
  一直都认为,只有理解软件原理,才能更好的维护软件运行,所以在再次复习这本书时,重新写下笔记。
  Nginx 由内核和模块组成。
  Nginx 内核功能:通过查找配置文件将客户端请求映射到一个location block,而在这个location中所配置的指令将会启动不同到模块去完成相应到工作。
  Nginx模块可以从结构上分为 核心模块、基础模块和第三方模块
  核心模块:HTTP 模块、EVENT模块、MAIL模块
  基础模块:HTTP Access 模块、‘HTTP FastCGI 模块、HTTP Proxy模块、HTTP Rewrite 模块
  第三方模块:HTTP Upstream Request Hash 模块、Notice 模块、HTTP Access Key 模块
  Nginx 的模块从功能上可以划分为三类
  1 Handlers(处理模块):直接处理请求,并进行输出内容和修改headers信息等操作。handlers 处理模块一般只能有一个。
  2 Filters(过滤模块):对处理器模块输出的内容进行修改操作,最后由Nginx 输出。
  3 Proxies(代理类模块):与后端一些服务,如fastcgi 等操作交互,实现服务代理和负载均衡等功能。
  Nginx 工作模式可以分为两类
  单工作进程模式:主进程 +一个单线程的工作进程
  多工作进程模式:主进程+ 多个工作进程(每一个工作进程包含多个线程)
  Nginx 默认的是单工作

页: [1]
查看完整版本: Nginx 的模块与工作原理