Nginx 和 Apache 各有什么优缺点?应该如何选择?

投稿   明月登楼  2017-06-05 07:31:04  199 人阅读  23 条评论

投放广告联系   诚邀合作伙伴   赞助我们   垃圾评论惩罚

Apache 和 Nginx 是世界上最通用的两大开源Web服务器。他们正为超过50%互联网流量传输提供服务。两种解决方案都能处理各种的工作场景,并与其他软件协同工作,从而提供完善的Web技术栈。尽管 Apache 和 Nginx 有许多共通的特性,并不能将它们视为可以完全相互替代的。它们各有所长。了解使用场景对你重新评估选择你的web服务器非常重要。

Nginx 和 Apache 各有什么优缺点?应该如何选择? 建站经验 第1张

Nginx 相对 Apache 的优点

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

Apache 相对 Nginx 的优点

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

存在就是理由,一般来说,需要性能的 WEB 服务,用 Nginx 。如果不需要性能只求稳定,那就 Apache 吧。后者的各种功能模块实现得比前者,例如 ssl 的模块就比前者好,可配置项多。

这里要注意一点, epoll ( freebsd 上是 kqueue )网络 IO 模型是 Nginx 处理性能高的根本理由,但并不是所有的情况下都是 epoll 大获全胜的,如果本身提供静态服务的就只有寥寥几个文件, Apache 的 select 模型或许比 epoll 更高性能。当然,这只是根据网络 IO 模型的原理作的一个假设,真正的应用还是需要实测了再说的。

如你所见,Apache 和 Nginx 都是很强力、灵活、能干的。决定哪个服务器对你来说最好,主要取决于什么功能可以解决你的特定需求,然后用你的方式去测试它。这两个项目在原生性能、功能,以及启动和运行每个解决方案所需的必要时间上有非常现实的冲突。然而,这些都是一系列取舍后的结果,不应该不假思索地随意使用。最后,没有通用的适合所有场景的 web 服务器,所以选择最切合你的目标的解决方案吧。

如果文章对你有帮助,请赞赏支持作者继续创作!

历史上的今天:

文章标签: ,   ,   ,  
原文地址:http://blog.ymanz.com/linux/5447.html
温馨提示:文章内容仅代表作者个人观点,不代表boke112导航赞同其观点和对其真实性负责!
版权声明:本文为投稿文章,感谢 明月登楼 的投稿,版权归原作者所有,欢迎分享本文,转载请保留出处!
淘宝天猫无门槛专享优惠券

 发表评论


  1. 叨声依旧
    叨声依旧 【小白】 @回复

    一直都是用的Apache,最早搭配是用Windows+Apache,现在是linux+Apache,后者更稳定,更强大,爽!

    • boke112导航
      boke112导航【村长】2017-06-15 10:27  回复

      @叨声依旧Linux比WIN更稳定更好,所以现在购买虚拟机或服务器都是Linux居多

  2. 靠谱学生兼职网
    靠谱学生兼职网 【尚书】 @回复

    有比较才知道有优势。

  3. 锅子
    锅子 【小白】 @回复

    两个可以配合使用

  4. 小萝博客
    小萝博客 【状元】 @回复

    最近都没时间折腾了

  5. 微部落
    微部落 【小白】 @回复

    恩是的~~

  6. 大伟哥博客
    大伟哥博客 【举人】 @回复

    现在来看,还是用apache的多,不想折腾就用apache好了

  7. 个人博客
    个人博客 【进士】 @回复

    不怎么接触这些东西,不太懂

  8. 聚赚园
    聚赚园 【举人】 @回复

    不错,本人正在学习

  9. 彩票自助机
    彩票自助机 【进士】 @回复

    研究过nginx 也配置过iis的php 现在一直在用Apache 感觉挺好用的

  10. 王商博客
    王商博客 【进士】 @回复

    我用的是Apache

  11. 灵异世界网
    灵异世界网 【进士】 @回复

    我一直用Nginx。

  12. Xedgo
    Xedgo 【小白】 @回复

    基本上中小站长可以不必考虑用哪个,差别很小。一般是公司部署项目的时候才会挑选,总结来说就是:你丫爱用哪个就用哪个

    • boke112导航
      boke112导航【村长】2017-06-05 16:15  回复

      @Xedgo[偷笑] 是的,其实对于我们这些小站长而言,确实如此,不必纠结

    • 明月登楼
      明月登楼 作者回复2017-06-06 07:31  回复

      @Xedgo呵呵,其实根据需要选择还是很有必要的!

  13. 姜哥说
    姜哥说 【状元】 @回复

    我不知道,就知道正常运行就行

  14. 微部落
    微部落 【小白】 @回复

    很不错 支持一下~~

  15. 夏天烤洋芋
    夏天烤洋芋 【状元】 @回复

    不知道我用的是不是Nginx 。原来貌似是Apache

  16. 企业战略
    企业战略 【举人】 @回复

    用Nginx用得多一些

  17. 深圳电脑维修
    深圳电脑维修 【状元】 @回复

    我用的是Nginx

  18. 爱时尚
    爱时尚 【尚书】 @回复

    我还是比较喜欢用Apache 因为 其他的我也不会用 [嘻嘻]

  19. 钱探子导航
    钱探子导航 【举人】 @回复

    Nginx用户路过,以前用的阿帕奇 [思考]

  20. 明月登楼
    明月登楼 【王爷】 @回复

    嘿嘿,自己做个沙发先!