首页  >  文章  >  运维  >  apache与nginx哪个好

apache与nginx哪个好

(*-*)浩
(*-*)浩原创
2019-11-02 09:57:283082浏览

目前比较主流的 Web 服务器应用也就是 Nginx 和 Apache 了,今天就给大家阐述一下为什么我一直都推荐大家使用 Nginx 而不是 Apache?

apache与nginx哪个好

有关 Nginx 和 Apache 的介绍我就不做赘述了,大家自行百度、谷歌一下就可以了解了,废话不多说了,直奔主题:

1、作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。   (推荐学习:nginx教程

在高连接并发的情况下,Nginx 是 Apache 服务器不错的替代品;Nginx 在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型。

Nginx 作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP 代理服务器对外进行服务。Nginx 采用 C 进行编写,不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好很多。

2、Nginx 配置简洁,Apache 复杂,Nginx 启动特别容易,并且几乎可以做到 7*24 不间断运行,即使运行数个月也不需要重新启动你还能够不间断服务的情况下进行软件版本的升级。Nginx 静态处理性能比 Apache 高 3 倍以上,Apache 对 PHP 支持比较简单,Nginx 需要配合其他后端来使用,Apache 的组件比 Nginx 多。

3、最核心的区别在于 Apache 是同步多进程模型,一个连接对应一个进程;Nginx 是异步的,多个连接(万级别)可以对应一个进程。

4、Nginx 的优势是处理静态请求,cpu 内存使用率低,Apache 适合处理动态请求,所以现在一般前端用 Nginx 作为反向代理抗住压力,Apache 作为后端处理动态请求。

Nginx 相对 Apache 的优点

轻量级,同样起 web 服务,比 Apache 占用更少的内存及资源

抗并发,Nginx 处理请求是异步非阻塞的,而 Apache 则是阻塞型的,在高并发下 Nginx 能保持低资源低消耗高性能

高度模块化的设计,编写模块相对简单

社区活跃,各种高性能模块出品迅速啊

Apache 相对 Nginx 的优点

rewrite,比 Nginx 的 rewrite 强大

模块超多,基本想到的都可以找到

少 bug,Nginx 的 bug 相对较多

超稳定

最后 Nginx 和 Apache 的差异总结成一句话就是:“Nginx 适合处理静态请求和反向代理,Apache 适合处理动态请求”。

但这个差异化只有在请求量达到一定的阈值时表现差异才能表现出来,对于 WordPress 、 Typecho 等等这里动态站点来说某一天流量达到这个阈值的时候,还可以部署 LNMPA 这样的生产环境来应对和解决。所以流量阈值需求不到的时候,选择 Nginx 是性价比最好的选择了。

以上是apache与nginx哪个好的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn