nginx原理架构图

Nginx是 master/worker 模型

一个master进程,可生成一个或多个worker进程,每个worker进程基于事件驱动机制响应客户端请求;
事件驱动机制:epoll(Linux),kqueue(FreeBSD),/dev/poll(Solaris)
消息通知:select,poll,rt signals
支持sendfile,sendfile64
支持AIO,mmap
 
master的任务:加载配置文件、管理worker进程、平滑升级、……
worker的功能:提供http服务、http代理、fastCGI代理、……
 
模块类型:
核心模块(对于http服务及邮件服务都是必要的):core module
Standard HTTP modules 标准模块必须装
Optional HTTP modules 可选模块可以选择用还是不用
Mail modules 邮件模块
3rd party modules 第三方模块
 
用来做什么?
静态资源的web服务器
http服务器的反向代理
nginx可以做正向代理服务器:
代理客户端的请求,自己处理静态资源,如果是动态资源就交给其它应用
nginx可以做反向代理服务器:
代理后端服务器的作用,如果一个客户端把请求发过来,他会完全把请求转发给后端服务器
nginx做反向代理可以隐藏后端服务器的IP;还可以给后端服务器分担压力;在反向代理上还可以做一个负载均衡的功能,但有多个客户端请求时,可以分别发给几台后端服务器

最新文章

  1. Oracle to_char 转换数值
  2. Windows7+32位,MongoDB安装
  3. single单例模式
  4. LUA 函数式编程demo
  5. IE8以下版本iframe出现滚动条和内容空白问题
  6. iOS - Swift NSPoint 位置
  7. photoshopCS4换中文
  8. JS:中文GB2312编码
  9. JAVA中的数据结构——集合类(序):枚举器、拷贝、集合类的排序
  10. 第十篇、自定义UIBarButtonItem和UIButton block回调
  11. 14.5.5.3 How to Minimize and Handle Deadlocks 如何减少和处理死锁
  12. HDOJ(HDU) 2093 考试排名(Arrays.sort排序、类的应用)
  13. Android系统提供了哪些东西,供我们可以开发出优秀的应用程序
  14. requests中自定义adapter
  15. fsync和fdatasync
  16. springMvc入门--初识springMvc
  17. JAVA-JSP内置对象之out对象进行页面输出
  18. spring boot 测试类
  19. Linux学习笔记:644、755、777权限详解
  20. iOS彩票项目--第一天,自定义TabBar控制器和自定义TabBar,自定义导航控制器

热门文章

  1. 计算机组成原理 — CPU 中央处理器
  2. 阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_4 请求参数绑定集合类型
  3. Day6 && Day7图论
  4. 【转】Java IOUtils方式上传下载文件 on HDFS
  5. 使用NLog的最佳实践
  6. spark基础概念(一):幂等性。
  7. PJzhang:如何在裸奔的年代找到一些遮羞布
  8. Ubuntu强制修改root密码
  9. Kali Linux 2019.2安装谷歌输入法
  10. 【linux开发】IO端口和IO内存的区别及分别使用的函数接口