Nginx 介绍

Nginx

Nginx(engine x)是一个高性能的代理服务器,主要作为HTTP server,HTTP reverse proxy server,mail proxy server,TCP/UDP proxy server。

主要工作在OSI的七层模型,也可以提供伪四层的负载均衡。

Nginx 是一个很强大的高性能Web和反向代理服务器,在连接高并发的情况下,Nginx是Apache服务器不错的替代品,能够支持高达 50,000 个并发连接数的响应。

三大核心功能:

  • http
    -- web服务器
    -- HTTP reverse proxy server

  • mail
    --mail proxy server

  • stream
    --TCP/UDP proxy server(伪四层代理,类似于LVS)

Nginx中联系最多的就是http协议

HTTP术语

URL:资源统一定位符

  shceme://[username[:password@]]host:port/path;params?uid=1#tr

http事务:request <--> response

headers:

  • 通用头部(General Headers)
  • 请求头部(Response Headers)
  • 回应头部(Request Headers)

request:

<method> <URL> <VERSION>
HEADERS         
<body>

response:

<VERSION> <STATUS> <REASON-PHRASE>
HEADERS 
<body>      
name: value

Method:GET/HEAD/POST, PUT/DELETE, TRACE, OPTIONS

Status Code:

  • 1xx:
  • 2xx:成功类响应码,200
  • 3xx:重定向类的响应码,301, 302, 304
  • 4xx:客户端错误,403,404
  • 5xx:服务器端错误,502

认证:

  • 基于ip认证
  • 基于用户认证 :basic/digest

httpd MPM:

  • prefork:进程模型,两级结构,主进程master负责生成子进程,每个子进程负责响应一个请求;

  • worker:线程模型,三级结构,主进程master负责生成子进程,每个子进程负责生成多个线程,每个线程响应一个请求;

  • event:主进程master负责生成子进程,每个子进程响应多个请求

Nginx的程序架构:

master/worker

一个master进程:负载加载和分析配置文件、管理worker进程、平滑升级
一个或多个worker进程:处理并响应用户请求
缓存相关的进程:

  • cache loader:载入缓存对象
  • cache manager:管理缓存对象

特性:

异步、事件驱动和非阻塞
并发请求处理:通过epoll/select
文件IO:高级IO sendfile,异步,mmap

nginx模块

高度模块化,但其模块早期不支持DSO机制;近期版本支持动态装载和卸载;

模块分类:

  • 核心模块:core module
  • 标准模块:
    -- HTTP modules:
    Standard HTTP modules
    Optional HTTP modules
    -- Mail modules
    -- Stream modules:传输层代理
  • 3rd party modules

nginx的功用

静态的web资源服务器;(图片服务器,或js/css/html/txt等静态资源服务器)
结合FastCGI/uwSGI/SCGI等协议反代动态资源请求;
http/https协议的反向代理;
imap4/pop3协议的反向代理;
tcp/udp协议的请求转发;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第一章 Nginx简介 Nginx是什么 没有听过Nginx?那么一定听过它的“同行”Apache吧!Ngi...
    JokerW阅读 32,922评论 24 1,002
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,073评论 19 139
  • 1.简介:  Nginx:engine X ,2002年,开源,商业版 http协议:web服务器(类似于ht...
    尛尛大尹阅读 5,890评论 0 3
  • I/O模型Nginx介绍Nginx的安装和目录结构Nginx的配置Nginx的编译安装 一、I/O模型 (一)I/...
    哈喽别样阅读 4,400评论 0 4
  • 啥都不说,先上图。 相信很多人看到标题多少都会有点疑惑,小苹果与奶奶一起住,所以章子怡不是好后妈,这是什么逻辑!难...
    与君共读一本书99阅读 4,878评论 7 7

友情链接更多精彩内容