导读
研发朋友们对应用过载就扩容这个动作已是非常的熟悉,但大家有听说过业务流量突增,nginx也随之需要扩容嘛?我相信很少听过,为什么呢?主要是nginx高效工作起作用,那接下来我们来讲讲我们nginx为何高效。
一. Nginx 为何神物
Nginx 是一种异步框架的web服务器,它可以用作反向代理、负载均衡器和 HTTP 缓存或邮件服务器。Nginx 是免费且开源的,根据类 BSD 许可证的条款发布,意味任何人都可以下载甚至修改源码。Nginx 软件由伊戈尔·赛索耶夫创建并于 2004 年首次公开发布。2011 年成立同名公司以提供支持,现大部分互联网公司都在使用。
二.Nginx 为何高效
一个高性能web服务器典型特点是处理速度快且消耗资源少.尤其在上万连接同时在线的时候.若要做到处理速度快,并发模型的设计尤其关键.服务器并发量取决于两个因素:一是服务器连接的进程数量, 二是每个进程可同时处理的并发请求数量,因而web服务器并发模型由两部分构成,服务的提供方式和连接处理机制, 这两种别具一格的方式使得Nginx在同类型的web服务器中表现优秀。
1. 服务提供方式
一般Web服务器并发处理请求有以下三种方式:多进程方式、多线程方式、异步方式。
多进程 需要内存复制等额外开销,客户端较多时候,服务器性能会降低,典型应用如Apache的prefork模块;
多线程 使用进程中多个线程提供服务,多线程开销较小,典型应用如Apache的worker模块;
异步 则采用非阻塞的方式与每个客户通信,服务器用一个进程进行轮询,典型应用如Nginx的work process进程;
其中效率最高是异步,最稳定是多进程、占用资源少是多线程。
| 类型 |
优点 |
缺点 |

Nginx以其高效的异步非阻塞模型和优秀的连接处理机制著称,通过使用I/O多路复用如epoll实现高性能。Tengine作为Nginx的衍生版本,提供了丰富的插件,如lua模块和健康检查模块,进一步提升了稳定性和性能。结合lua,Nginx在核心接入和业务承载服务器中承担了动态负载均衡、缓存、AB测试等多种角色。

618

被折叠的 条评论
为什么被折叠?



