Nginx简介,Nginx服务器架构设计是怎样的?
来源:James 时间:2022-08-04 09:05:13阅读:0
一、Nginx简介
Nginx俄罗斯人写的很轻量级HTTP服务器,Nginx,它的发音是engineX高性能HTTP还有一个反向代理服务器IMAP/POP3/SMTP代理服务器。
Nginx以其稳定性、丰富的模块库、灵活的配置和低系统资源的消耗而闻名Apache2.2+mod_proxy_balancer轻量级替代者不仅响应静态页面非常快,而且模块数量也达到Apache的近2/3。对proxy和rewrite对模块的支持非常彻底和支持mod_fcgi、ssl、vhosts,适合用来做mongrelclusters的前端HTTP响应。
目前Nginx很多大型企业在国内都有应用,普及率逐年上升Nginx原因也很简单:
首先,它可以支持5W高并发连接;
二是内存消耗少;
第三,成本低。
Nginx在架构中发挥的作用:
1.网关
---客户总入口。
2.虚拟主机
---机器是不同的域名/ip/提供端口服务
3.路由
---采用反向代理,整合后续服务为完整业务
4.静态服务器
---mvvm用于发布前端的模式html/css/js/img
5.负载集群
---使用upstream,负载多个tomcat
二、Nginx特点
与其他web与服务器相比,Nginx特点:
1、速度快
nginx单次采用预读、连接池、内存池等技术HTTP请求速度更快。
2、扩展性好
Nginx结构为核心 模块,Nginx它本身就是一个Epool或Kqueue模块知识将在后面讨论事件处理和分发架构。
3、高可靠性
Nginx核心是一个任务轻的管理过程(master过程)和几个工作过程(worker组成过程)。具体的HTTP请求在工作过程中负载均衡。如果一个工作过程异常终止,管理过程将迅速重启一个新的工作过程来取代这个过程。
4.占用低内存
一般情况下,1万个非活动HTTP保存连接只占2.5MB内存。ngx_lua每扩展1万个连接也只占2个.xMB内存。
5.并发能力高
在万级以上的场合部署。
Nginx全异步,非阻塞I/O思想在核心、模块和ngx_lua无论是自己实现的模块,还是通过模块lua脚本代码的实现是非阻塞高速运行。
6、热部署
由于Nginx管理过程和工作过程是分开设计的,因此可以实现热部署功能。即系统不断升级可执行程序,更新配置文件和日志。
7、开源
三、Nginx架构设计
高度模块化的设计是Nginx架构基础。Nginx服务器分解成多个模块,每个模块都是
一个功能模块能的功能模块,严格遵循高内聚、低耦合的原则。
1.核心模块
核心模块是Nginx提供错误日志记录、配置文件分析、事件驱动机制、过程管理等核心功能。
2.标准HTTP模块
标准HTTP模块提供HTTP协议分析相关功能,如:端口配置、网页编码设置、HTTP设置响应头等。
3.可选HTTP模块
可选HTTP模块主要用于扩展标准HTTP功能,让Nginx如:Flash多媒体传输、分析GeoIP请求、SSL支持等。
4.邮件服务模块
邮件服务模块主要用于支持Nginx包括对的邮件服务POP3协议、IMAP协议和SMTP支持协议。
5.第三方模块
第三方模块是为了扩展Nginx如:Json支持、Lua支持等。
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:shawn.lee@vecloud.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
本站原创内容未经允许不得转载,或转载时需注明出处:https://news.kd010.com/fwqjs/12299.html
TAG标签: