关注云服务器
相关知识分享

网站web环境该选apache还是nginx

不管是Apache还是Nginx,都是web服务器应用,我们的网站都是需要web环境来展示的,所以选择好web服务器应用对于网站的稳定性是相当重要的,这也关系到我们网站的性能。目前比较主流的web服务器应用有Nginx和Apache,今天云测速就给大家分析一下这两个web应用服务器的区别以及该如何选择。

Nginx和Apache的比较

一、Nginx相对于Apache的优点

轻量级,同样起web 服务,比Apache 占用更少的内存及资源
抗并发,Nginx 处理请求是异步非阻塞的,而Apache 则是阻塞型的,在高并发下Nginx 能保持低资源低消耗高性能
高度模块化的设计,编写模块相对简单
社区活跃,各种高性能模块出品迅速啊

二、Apache相对于Nginx的优点

rewrite ,比Nginx 的rewrite 强大
模块超多,基本想到的都可以找到
少bug ,Nginx 的bug 相对较多

还有比较重要的一点就是Apache比Nginx稳定,一般来说,如果你需要高性能的web服务,那么建议选择Nginx;如果对于稳定性要求更高,那么建议选择Apache。后者的各种功能模块实现得比前者,例如ssl 的模块就比前者好,可配置项多。这里要注意一点,epoll(freebsd 上是 kqueue )网络IO 模型是Nginx 处理性能高的根本理由,但并不是所有的情况下都是epoll 大获全胜的,如果本身提供静态服务的就只有寥寥几个文件,Apache 的select 模型或许比epoll 更高性能。当然,这只是根据网络IO 模型的原理作的一个假设,真正的应用还是需要实测了再说的。 

三、作为 Web 服务器:相比 ApacheNginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。在高连接并发的情况下,Nginx 是 Apache 服务器不错的替代品;Nginx 在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型。

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

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

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

七、nginx处理静态文件好,耗费内存少.但无疑apache仍然是目前的主流,有很多丰富的特性.所以还需要搭配着来.当然如果能确定nginx就适合需求,那么使用nginx会是更经济的方式.

综上所述,Nginx 和 Apache 的差异总结成一句话就是:“Nginx 适合处理静态请求和反向代理,Apache 适合处理动态请求”。但这个差异化只有在请求量达到一定的阈值时表现差异才能表现出来,对于 WordPress 、 Typecho 等等这里动态站点来说某一天流量达到这个阈值的时候,还可以部署 LNMPA 这样的生产环境来应对和解决。所以流量阈值需求不到的时候,选择 Nginx 是性价比最好的选择了。

赞(0) 打赏
未经允许不得转载:云测速 » 网站web环境该选apache还是nginx

觉得文章有用就打赏一下文章作者吧~

微信扫一扫打赏