Sri*_*aju 10 architecture apache webserver nginx
这个问题不是nginx vs apache.我对NGinx相对于Apache的架构优势更感兴趣.我能够理解 -
为什么是这样?Apache落伍于何?
squ*_*tte 13
nginx严格"优于"Apache的原因并不存在.对于许多加载模式,您可以配置Apache以便它处理此负载.对于某些(非常繁忙的)加载模式,默认配置中的nginx可能会出现性能下降,并且可能需要微调才能正常工作.
然而,许多人的经验是,nginx实际上可以"更好"地开箱即用,或者通过简单的调整.当nginx作为前端安装时,许多系统的性能明显提高,Apache移至后端.
主要原因是nginx是事件驱动的,并且包含处理连接生命周期的状态机.这样,您可以拥有非常少的"工作"进程,每个进程同时处理数百甚至数千个连接.对于Apache,您必须运行与连接数相同数量的子进程(或线程).
很明显,针对一千个流程的三个流程至少应该是一个巨大的胜利.
特别是,nginx可以轻松地减少服务静态文件(图像,Javascript,CSS)的负担.处理nginx中的每个附加连接非常便宜,因此静态文件通常占请求数量的大多数,因此您可以获得高效的处理.
此外,对于"慢客户端",nginx性能更好.当您让Apache直接访问Internet并且客户端通过(拥塞)线路发送请求时,您的(快速)服务器将不得不耐心地为(慢速)客户端提供服务,等待它消耗整个响应.因此Apache子(或线程)无法做任何有用的事情.另一方面,Nginx工作者只是在epoll描述符集中保持这种缓慢的连接,同时处理其他连接.
从概念的角度来看,您应该始终尝试将请求的"类"与其自己的性能配置文件和需求分开.例如,提供小型静态文件就是这样的类之一; 服务动态页面是另一个这样的类; 提供巨大的静态文件是另一回事.将nginx引入您的系统会隐式处理这种分离.
| 归档时间: |
|
| 查看次数: |
2844 次 |
| 最近记录: |