
Nginx是什么?
Nginx官方说法:
NGINX是一个免费的,开源的,高性能的HTTP服务器和反向代理,以及一个IMAP / POP3代理服务器。
NGINX以其高性能,稳定性,丰富的功能集,简单的配置和低资源消耗而闻名。
NGINX是为解决C10K问题而编写的少数服务器之一。与传统服务器不同,NGINX不依赖于线程来处理请求。
相反,它使用更加可扩展的事件驱动(异步)架构。
- Nginx(engine x)是一个轻量级Web服务器。
- Nginx(engine x)是一个高性能的HTTP服务器和反向代理服务器。
- Nginx(engine x)是一个HTTP服务器HTTP server。
- Nginx(engine x)是一个HTTP反向代理服务器HTTP reverse proxy server。
- Nginx(engine x)是一个邮件代理服务器mail proxy server 。
- Nginx(engine x)是一个TCP/UDP反向代理服务器TCP/UDP proxy server。
Niginx程序架构
一个master进程/多个worker进程:
一个master进程:
负载加载和分析配置文件、管理worker进程、平滑升级
一个或多个worker进程:
处理并响应用户请求
缓存相关的进程:
cache loader:载入缓存对象
cache manager:管理缓存对象
特性:异步、事件驱动和非阻塞
并发请求处理:通过epoll/select
文件IO:高级IO sendfile,异步,mmap
nginx模块:
- http模块、mail模块、stream模块
- 高度模块化,每个模块的配置文件可以单独放在一个路径, include 指定目录。
核心模块:core module
标准模块:HTTP modules、Mail modules、Stream modules
第三方模块:3rd party modules
nginx的功用:
1. 静态的web资源服务器;(图片服务器,或js/css/html/txt等静态资源服务器)
2. 结合FastCGI/uwSGI/SCGI等协议反代动态资源请求;
3. http/https协议的反向代理;
4. imap4/pop3协议的反向代理;
5. tcp/udp协议的请求转发;
未完待续...
网友评论