一、定义:

  1. ApacheApache HTTP服务器是一个模块化的服务器,可以运行在几乎所有广泛使用的计算机平台上。其属于应用服务器。Apache支持支持模块多,性能稳定,Apache本身是静态解析,适合静态HTML、图片等,但可以通过扩展脚本、模块等支持动态页面等。(Apche可以支持PHPcgiperl,但是要使用Java的话,你需要Tomcat在Apache后台支撑,将Java请求由Apache转发给Tomcat处理。)

缺点:配置相对复杂,自身不支持动态页面。

  1. Tomcat:Tomcat是应用(Java)服务器,它只是一个Servlet(JSP也翻译成Servlet)容器,可以认为是Apache的扩展,但是可以独立于Apache运行。

  2. NginxNginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器。

二、比较

  1. Apache与Tomcat的比较
    相同点:

    • 两者都是Apache组织开发的
    • 两者都有HTTP服务的功能两者都是免费的

    不同点:

    1. Apache是专门用了提供HTTP服务的,以及相关配置的(例如虚拟主机、URL转发等等),而Tomcat是Apache组织在符合Java EE的JSP、Servlet标准下开发的一个JSP服务器。
    2. Apache是一个Web服务器环境程序,启用他可以作为Web服务器使用,不过只支持静态网页如(ASP,PHP,CGI,JSP)等动态网页的就不行。如果要在Apache环境下运行JSP的话就需要一个解释器来执行JSP网页,而这个JSP解释器就是Tomcat。
    3. Apache:侧重于HTTPServer ,Tomcat:侧重于Servlet引擎,如果以Standalone方式运行,功能上与Apache等效,支持JSP,但对静态网页不太理想
    4. Apache是Web服务器,Tomcat是应用(Java)服务器,它只是一个Servlet(JSP也翻译成Servlet)容器,可以认为是Apache的扩展,但是可以独立于Apache运行。
    5. 实际使用中Apache与Tomcat常常是整合使用:
      5.1 如果客户端请求的是静态页面,则只需要Apache服务器响应请求。
      5.2. 如果客户端请求动态页面,则是Tomcat服务器响应请求。因为JSP是服务器端解释代码的,这样整合就可以减少Tomcat的 服务开销。可以理解Tomcat为Apache的一种扩展。
  2. Nginx与Apache比较:

    1. nginx相对于apache的优点
      1. 轻量级,同样起web 服务,比apache占用更少的内存及资源
      2. 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
      3. 高度模块化的设计,编写模块相对简单
      4. 提供负载均衡
      5. 社区活跃,各种高性能模块出品迅速

    2. apache 相对于nginx 的优点
      1. apache的 rewrite 比nginx 的强大;
      2. 支持动态页面;
      3. 支持的模块多,基本涵盖所有应用;
      4. 性能稳定,而nginx相对bug较多。

    3. 两者优缺点比较:
      1. Nginx 配置简洁, Apache 复杂;
      2. Nginx 静态处理性能比 Apache 高 3倍以上;
      3. Apache 对 PHP 支持比较简单,Nginx 需要配合其他后端用;
      4. Apache 的组件比 Nginx 多;
      5. apache是同步多进程模型,一个连接对应一个进程;
      6. nginx是异步的,多个连接(万级别)可以对应一个进程;
      7. nginx处理静态文件好,耗费内存少;
      8. 动态请求由apache去做,nginx只适合静态和反向;
      9. Nginx适合做前端服务器,负载性能很好;
      10. Nginx本身就是一个反向代理服务器 ,且支持负载均衡

3.总结

  1. Nginx优点:负载均衡、反向代理、处理静态文件优势。nginx处理静态请求的速度高于apache;
  2. Apache优点:相对于Tomcat服务器来说处理静态文件是它的优势,速度快。Apache是静态解析,适合静态HTML、图片等。
  3. Tomcat:动态解析容器,处理动态请求,是编译JSP\Servlet的容器,Nginx有动态分离机制,静态请求直接就可以通过Nginx处理,动态请求才转发请求到后台交由Tomcat进行处理。Apache在处理动态有优势,Nginx并发性比较好,CPU内存占用低,如果rewrite频繁,那还是Apache较适合。
  4. 反向代理的理解:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

Nginx 与 Tomcat,Apache的区别相关推荐

  1. Apache、Nginx、Tomcat、PHP的区别

    Apache.Nginx.Tomcat.PHP的区别 Apache和Nginx算是市面上两款比较强大的WEB服务软件. Apache的优点: 支持模块多,功能多 运行稳定性强 支持PHP模块,无需安装 ...

  2. Apache、Nginx、Tomcat的区别

    Apache.Nginx.Tomcat的区别 Nginx Tomcat Apache,Nginx与Tomcat的区别 Nginx -----是一个高性能的HTTP和反向代理服务器,也是一个IMAP/P ...

  3. 一文看懂Tomcat、Nginx和Apache的区别

    这三者都是web server,各自有什么特点? 他们之间的区别是什么? nginx 和 tomcat性能上有何异同? tomcat用在Java后台程序,难道不能用apache和nginx? 题目中的 ...

  4. nginx,tomcat,apache三者分别用来做什么,有何区别

    1. Nginx和tomcat的区别 nginx常用做静态内容服务和代理服务器,直接外来请求转发给后面的应用服务器(tomcat,Django等),tomcat更多用来做一个应用容器,让java we ...

  5. Apache vs Nginx vs Tomcat vs JBoss vs Jetty

    Reference [1] https://blog.csdn.net/allenlinrui/article/details/6675998 Nginx 轻量级,采用 C 进行编写,同样的 web ...

  6. nginx 代理 内存_科普Nginx和apache的区别及优缺点比较

    最近很多小伙伴来问我Nginx和apache的区别,这个问题用三言两语也很难解释,于是整理出了这一篇文章与大家共享.除了Nginx和apache的区别,还比较了各自的优缺点.这是我自学Nginx和工作 ...

  7. Web服务(Apache、Nginx、Tomcat、Jetty)与应用(LAMP、CMS-WordPressGhost、Jenkins、Gitlab)

    Web服务和应用是目前信息技术领域的热门技术.如何使用Docker来运行常见的Web服务器(包括Apache.Nginx.Tomcat等),以及一些常用应用(LAMP.CMS等).包括具体的镜像构建方 ...

  8. Vue项目上线后刷新报错404问题(apache,nginx,tomcat)

    一. Vue项目打包发布apache报错: route,配置一个覆盖所有的路由情况 1.需要修改router/index.js中new Router 配置,加一个base: '/htcm_front/ ...

  9. 配置apache和nginx的tomcat负载均衡

    2016-01-25 09:36 by pursuer.chen, 2777 阅读, 2 评论, 收藏, 编辑 概述 本篇文章主要介绍apache和nginx的相关配置,tomcat的相关安装配置我在 ...

最新文章

  1. 企业官网建设注重这四点错不了!
  2. 进入编辑模式、vim命令模式、vim实践
  3. 最大子段和——分治与动态规划
  4. idea下的调试配置
  5. 区块链BaaS云服务(24)秘猿科技CITA
  6. 对内存重叠的深入认识
  7. IPtables终于可以使用了,客户机不可以上网的问题解决了
  8. android 反编译 添加 res,Android apk反编译记录
  9. css3新单位vw、vh、vmin、vmax的使用介绍
  10. EXCEL如何将平均值加减标准差设置为科学计数法显示
  11. 【Web开发】Python实现Web图表功能(D-Tale入门)
  12. pywifi安装的一个坑
  13. 详细解释JavaScript中三元表达式
  14. Floor报错注入原理解析心得
  15. Smartforms 总计小计
  16. jquery时间网格_10个最迷人的jQuery网格
  17. 计算机万金油专业,为什么说自动化专业是万金油专业
  18. size_t类型是什么意思?
  19. 微信/易信公共平台开发(一):开发了一个简单易用的PHP类(提供源码),十几行代码搞定一个公众号
  20. vue中图片和视频加载不出

热门文章

  1. updating homebrew...一直在等 brew install xxx卡在Updating Homebrew
  2. php 长剑设计模式,PHP设计模式(创建型)
  3. centos7安装python3_详解Centos7升级python 2.7至Python 3.7
  4. “.中国”域名!小米有新网址了:纯汉字 输网址更方便了
  5. 腾讯音乐计划以介绍形式在港交所主板二次上市
  6. 7月发布?华为李昌竹确认Mate 50系列:会来的但不是现在
  7. 蔚来ET5将于2022年9月开启交付 补贴前售价32.8万元起
  8. 苹果蜂窝网络版iPad mini 6不支持毫米波5G
  9. 荣耀Magic3 Pro渲染图曝光:双打孔曲面屏+环形五摄
  10. 华为P50系列终于要来了!但最大问题却是...