加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

nginx和apache web服务器

发布时间:2020-12-13 21:29:13 所属栏目:Nginx 来源:网络整理
导读:这个问题不是nginx vs apache.我对NGinx对Apache的架构优势更感兴趣.当我能够理解 nginx是一个异步的,事件驱动的网络服务器,它以超大的优势胜过Apache. 为什么是这样? Apache落后于哪里? 最佳答案 没有一个原因,nginx严格“胜过”Apache.对于许多加载模式,

这个问题不是nginx vs apache.我对NGinx对Apache的架构优势更感兴趣.当我能够理解 –

> nginx是一个异步的,事件驱动的网络服务器,它以超大的优势胜过Apache.

为什么是这样? Apache落后于哪里?

最佳答案
没有一个原因,nginx严格“胜过”Apache.对于许多加载模式,您可以配置Apache,以便处理此负载.对于一些(非常繁忙的)加载模式,默认配置中的nginx可能会显示性能下降,并且可能需要微调才能正常工作.

然而,这是许多的经验,nginx实际上是“开箱即用”,或者简单的调整.当nginx作为前端安装时,许多系统的性能显着提高,Apache移动到后端.

主要原因是nginx是事件驱动的,并且包含处理连接生命周期的状态机.这样,您可以拥有非常少的“工作者”进程,每个进程同时处理数百甚至数千个连接.对于Apache,您将必须运行与连接数相同数量的子进程(或线程).

显然,反对一千个进程的三个进程至少应该是一个巨大的胜利.

特别是,nginx很容易允许大大减少服务静态文件(图像,Javascript,CSS)的负载.处理nginx中的每个附加连接是非常便宜的,因为根据请求数量,静态文件通常是多数,您可以获得高效的处理.

此外,nginx的性能对于“慢客户端”来说更好.当您有Apache直视互联网,并且客户端发送请求(拥塞)线路时,您的(快速)服务器将不得不耐心地馈送(慢)客户端,等待它消耗整个响应.因此,Apache小孩(或线程)无法做任何有用的事情.另一方面,Nginx工作者只需将这个缓慢的连接保存在epoll集合的描述符中,同时处理其他连接.

从概念的角度来看,您应该始终尝试将请求的“类”与自己的性能配置文件和要求分开.例如,提供小型静态文件是其中之一;服务动态页面是另一个类;服务巨大的静态文件是另一个.向你的系统介绍nginx隐含地处理这种分离.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读