`
junehappylove
  • 浏览: 2609 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Apache和Apache Tomcat的区别是什么?

 
阅读更多
  • 概述

    简单点说,Apache有两种含义,一种是指Apache基金会,一种是指Apache服务器,也就是我们耳熟能详的httpd。Apache开发团队刚开始的时候仅仅只有httpd这一个项目,后来随着httpd服务器的流行,这个团队就成立了一个基金会,即Apache基金会。现如今Apache基金会已经成为开源世界的最大的开源组织,其下的开源项目有成百个之多,而Apache服务器仅仅是其中的一个顶级项目而已。另外,Hadoop,Hbase等非常著名的开源项目也是Apache基金会下的子项目,而Tomcat也是属于Apache基金会的子项目。 所以,Tomcat是Apache基金会的一个子项目,是和Apache服务器(也就是httpd)同级别的项目。 同为服务器,Tomcat的特别之处在于它还是Java的Web容器,能够处理JSP;而Apache一般是与PHP结合,并不能处理JSP。

    定义

    apache: apache httpd
    tomcat: apache tomcat

    详述

    Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML、PHP、JSP、Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置。

    Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP)

    Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行

    两者从以下几点可以比较的:

    • 1、两者都是apache组织开发的
    • 2、两者都有HTTP服务的功能
    • 3、两者都是开源免费的

    联系

    • 1)Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持php,还可以与Tomcat连通(Apache单向连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然)。
    • 2)Apache只支持静态网页,但像Jsp动态网页就需要Tomcat来处理。
    • 3)Apache和Tomcat整合使用:
    如果客户端请求的是静态页面,则只需要Apache服务器响应请求;
    如果客户端请求动态页面,则是Tomcat服务器响应请求,将解析的JSP等网页代码解析后回传给Apache服务器,再经Apache返回给浏览器端。
    这是因为jsp是服务器端解释代码的,Tomcat只做动态代码解析,Apache回传解析好的静态代码,Apache+Tomcat这样整合就可以减少Tomcat的服务开销。
    • 4)Apache和Tomcat是独立的,在同一台服务器上可以集成。

    区别

    Apache是有C语言实现的,支持各种特性和模块从而来扩展核心功能;Tomcat是Java编写的,更好的支持Servlet和JSP。

    • 1、Apache是Web服务器,Web服务器传送(serves)页面使浏览器可以浏览,Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供 (serves)商业逻辑(business logic)。
      Tomcat是运行在Apache上的应用服务器,应用程序服务器提供的是客户端应用程序可以调用(call)的方法 (methods)。它只是一个servlet(jsp也翻译成servlet)容器,可以认为是Apache的扩展,但是可以独立于apache运行。
    • 2、Apache是普通服务器,本身只支持html静态普通网页。不过可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然);
      Tomcat是jsp/servlet容器,同时也支持HTML、JSP、ASP、PHP、CGI等,其中CGI需要一些手动调试,不过很容易的。
    • 3、Apache侧重于http server,Tomcat侧重于servlet引擎,如果以standalone方式运行,功能上Tomcat与apache等效支持JSP,但对静态网页不太理想。
    • 4、Apache可以运行一年不重启,稳定性非常好,而Tomcat则不见得。
    • 5、首选web服务器是Apache,但Apache解析不了的jsp、servlet才用tomcat。
    • 6、Apache是很最开始的页面解析服务,tomcat是后研发出来的,从本质上来说tomcat的功能完全可以替代Apache,但Apache毕竟是tomcat的前辈级人物,并且市场上也有不少人还在用Apache,所以Apache还会继续存在,不会被取代,apache不能解析java的东西,但解析html速度快。

    两者例子

    Apache是一辆车,上面可以装一些东西如html等,但是不能装水,要装水必须要有容器(桶),而这个桶也可以不放在卡车上,那这个桶就是TOMCAT。

    两者整合

    Apache是一个web服务器环境程序,启用他可以作为web服务器使用不过只支持静态网页,不支持动态网页,如asp、jsp、php、cgi

    如果要在Apache环境下运行jsp就需要一个解释器来执行jsp网页,而这个jsp解释器就是Tomcat

    那为什么还要JDK呢?因为jsp需要连接数据库的话就要jdk来提供连接数据库的驱程,所以要运行jsp的web服务器平台就需要APACHE+TOMCAT+JDK

    整合的好处

    如果客户端请求的是静态页面,则只需要Apache服务器响应请求;如果客户端请求动态页面,则是Tomcat服务器响应请求。因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销

分享到:
评论

相关推荐

    apache和tomcat的区别

    在讨论apache和tomcat的区别之前,我们需要了解这两个概念是什么。Apache是一个开源的Web服务器软件,是一个基于HTTP协议的Web服务器,可以处理静态网页,而Tomcat是一个基于Java的应用服务器,可以处理动态网页,...

    apache-tomcat-6.0.10.tar.gz_apache_apache安装包_tomcat6 un_unix tom

    Apache Tomcat是一款开源的Java Servlet容器,主要用于部署和运行Java Web应用程序,包括JSP和Servlet。这个"apache-tomcat-6.0.10.tar.gz"是Apache Tomcat的6.0.10版本,适用于Unix类操作系统,如Linux或macOS。此...

    开发工具 apache-tomcat-8.0.41-windows-x86

    开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-...

    windows下整合apache和tomcat服务器的方法

    在Windows环境下,将Apache HTTP Server和Tomcat集成是常见的服务器配置任务,以便利用Apache的静态内容处理能力以及Tomcat对动态内容(如JSP、Servlet)的支持。以下是一份详细的步骤指南,帮助你理解整合过程。 *...

    apache-tomcat-6.0.18

    Apache Tomcat 6.0.18 是一个广泛使用的开源软件,主要作为Java Servlet和JavaServer Pages (JSP) 的容器。它实现了Java EE的Web应用程序部署规范,是开发和运行Java Web应用的重要平台。Tomcat是Apache软件基金会的...

    apache-tomcat-9.0.27.tar (1)

    apache-tomcat-9.0.27.tar (1)apache-tomcat-9.0.27.tar (1)apache-tomcat-9.0.27.tar (1)apache-tomcat-9.0.27.tar (1)apache-tomcat-9.0.27.tar (1)apache-tomcat-9.0.27.tar (1)apache-tomcat-9.0.27.tar (1)...

    apache-tomcat-7.0.75.zip

    Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和...

    apache-tomcat-9.0.27-apache-tomcat-10.0.27.zip

    这个压缩包“apache-tomcat-9.0.27-apache-tomcat-10.0.27.zip”包含了Apache Tomcat的两个不同版本,即9.0.27和10.0.27,这两个版本之间存在显著的区别和改进。 首先,Apache Tomcat 9.0.27是9.x系列的一个稳定...

    apache-tomcat-9.0.41.zip

    Apache和Tomcat都可以做为独立的web服务器来运行,但是Apache不能解释java程序。我后面Javaweb程序设计文章里面在eclipse上会用到apache-tomcat-9.0.41这个服务器。 两者都是一种容器,只不过发布的东西不同:...

    apache2与tomcat整合

    Apache2与Tomcat整合是为了实现更高效的Web服务部署,特别是在处理高并发和负载均衡时。Apache作为成熟的HTTP服务器,常被用作前端服务器,负责静态资源的处理和动态请求的分发,而Tomcat作为Java应用服务器,主要...

    apache-tomcat-9.0.45-windows-x64

    apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-tomcat-9.0.45-windows-x64apache-...

    apache-tomcat-10.0.8.zip

    Apache Tomcat 软件是Jakarta Servlet、 Jakarta Server Pages、 Jakarta Expression Language、 Jakarta WebSocket、 Jakarta Annotations和 Jakarta Authentication 规范的开源实现 。 压缩包内容: apache-...

    apache-tomcat-8.0.51.rar_Java 8_Tomcat/8.0.51_apache基金会_tomcat

    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat ...

    apache-tomcat-7.0.79.zip

    Apache Tomcat是一个开源的软件应用服务器,主要用于运行Java Servlet和JavaServer Pages(JSP)应用程序。这个"apache-tomcat-7.0.79.zip"压缩包包含了Apache Tomcat的7.0.79版本,这是一个稳定且广泛使用的版本。...

    apache web整合Tomcat工具

    Apache Web服务器和Tomcat是两种广泛使用的开源软件,分别用于处理静态内容和Java应用程序的运行。在Web开发中,为了充分利用两者的优势,通常会将它们整合在一起,以便Apache处理静态资源,而Tomcat则处理动态内容...

    apache-tomcat-8.5.35

    Apache Tomcat 8.5.35 是一个广泛使用的开源软件,它是一个实现了Java Servlet、JavaServer Pages(JSP)和Java EE的Web应用程序容器。这个版本特别针对在64位Windows操作系统上运行进行了优化。在本文中,我们将...

    apache-tomcat-8.5.78-windows-x64安装包-kaic.rar

    apache-tomcat-8.5.78-windows-x64安装包 apache-tomcat-8.5.78-windows-x64安装包 apache-tomcat-8.5.78-windows-x64安装包 apache-tomcat-8.5.78-windows-x64安装包 apache-tomcat-8.5.78-windows-x64安装包 ...

    apache+nginx+tomcat

    Apache、Nginx 和 Tomcat 是在 Web 服务器领域中常用的三个组件,它们各自承担着不同的职责,并且经常被组合使用以实现高效、稳定的网站部署和应用服务。 Apache HTTP Server 是世界上最广泛使用的开源 Web 服务器...

Global site tag (gtag.js) - Google Analytics