Apache和Nginx的区别
Apache 和 Nginx的区别与⽐较:
Apache:
Apache HTTP Server(简称apache)是Apache软件基⾦会的⼀个开放源码的⽹页服务器,可以在⼤多数计算机操作系统中运⾏,由于其多平台和安全性被⼴泛使⽤,是最流⾏的Web服务器端软件之⼀,它快速、可靠并且通过简单的API扩展,将Perl/Python等解释器编译到服务器中。
Apache是以进程为基础的结构,进程要⽐线程消耗更多的系统开⽀,不太适⽤于多处理器环境,因此,在⼀个apache Web站点扩容时,通常是增加服务器或扩充集节点⽽不是增加处理器。
Nginx:
Nginx是⼀个⾼性能的HTTP和反向代理服务器。
是⼀款轻量级的web服务器/反向代理服务器/电⼦邮件(IMAP/POP3)代理服务器。
1、优缺点⽐较:nginx和apache区别
(1)nginx相对于apache的优点:
* 轻量级,同样起web服务,⽐apache占⽤更少的内存及资源
* 抗并发,nginx处理请求是异步⾮阻塞的,⽽apache是阻塞型的
在⾼并发下,nginx能保持低资源低消耗⾼性能
* ⾼度模块化的设计,编写模块相对简单
(2)apache相对于nginx的优点:
* Rewrite⽐nginx的rewrite强⼤ ###rewrite的主要功能就是实现统⼀资源定位符(URL)的跳转
* 模块多,基本想到的都可以到
* 少bug,nginx的bug相对较多
* 超稳定
存在的理由:⼀般来说,需要性能的web服务,⽤nginx。若不需要性能只求稳定,就选⽤apache。
2、作为web服务器:
相⽐apache,nginx使⽤更少的资源,⽀持更多的并发连接,体现更⾼的效率。
Nginx作为负载均衡服务器:nginx既可以在内部直接⽀持rails和php程序对外进⾏服务,也可以⽀持http代理服务器对外进⾏服务。Nginx采⽤C进⾏编写,不论是系统资源开销还是CPU使⽤效率都⽐较好。
作为邮件代理服务器:最早开发这个产品的⽬的之⼀也是作为邮件代理服务器。
3、nginx配置简洁, apache较复杂
Nginx静态处理性能⽐apache⾼3倍以上
4、最核⼼的区别在于:apache是同步多进程模型,⼀个连接对应⼀个进程,nginx是异步的,多个连接可以对应⼀个进程。
Nginx处理静态⽂件好,耗费内存少,只适合静态和反向。Apache在处理动态有优势,nginx并发性⽐较好,CPU占⽤内存低,如果rewrite 频繁,选⽤apache最佳。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论