Apache与Tomcat 区别联系

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

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

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

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

  1、两者都是apache组织开发的 

  2、两者都有HTTP服务的功能 

  3、两者都是开源免费的

联系

  1)Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持php,还可以与Tomcat连通(Apache单向连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然)。  

  2)Apache只支持静态网页,但像asp、jsp、php、cgi等动态网页就需要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开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行。Apache是Web服务器而Tomcat是Java应用服务器。


Apache:是C语言实现的,专门用来提供HTTP服务。

特性:简单、速度快、性能稳定、可配置(代理)

1、主要用于解析静态文本,并发性能高,侧重于HTTP服务;

2、支持静态页(HTML),不支持动态请求如:CGI、Servlet/JSP、PHP、ASP等;

3、具有很强的可扩展性,可以通过插件支持PHP,还可以单向Apache连接Tomcat实现连通;

4、Apache是世界使用排名第一的Web服务器。


Tomcat:是Java开发的一个符合JavaEE的Servlet规范的JSP服务器(Servlet容器), Apache 的扩展

特性:免费的Java应用服务器

1、主要用于解析JSP/Servlet,侧重于Servlet引擎;

2、支持静态页,但效率没有Apache高;支持Servlet、JSP请求;

3、Tomcat本身也内置了一个HTTP服务器用于支持静态内容,可以通过Tomcat的配置管理工具实现与Apache整合。


Apache + Tomcat

两者整合后优点:

如果请深圳市是静态网页则由Apache处理,并将结果返回;如果是动态请求,Apache会将解析工作转发给Tomcat处理,Tomcat处理后将结果通过Apache返回。这样可以达到分工合作,实现负载远衡,提高系统的性能。


总结:

打个比方:Apache是一辆卡车,上面可以装一些东西如html等。但是不能装水(JSP),要装水必须要有容器(桶),Tomcat就是一个桶(装像JSP这样的水),而这个桶也可以不放在卡车上。

熟悉三国的朋友都知道曹操,曹操有二十五个儿子,其中最得曹操宠爱的是曹丕、曹植、曹彰三个,曹丕性格阴冷,擅长政治;曹植才华横溢,放浪不羁;曹彰武艺高强,战功卓著。曹操一直希望这三个儿子当中选取自己的继承人,最后与曹操性格最为相近的曹丕脱颖而出。但是我们永远都不会否认曹植的才华和曹彰的武功。

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。在Apache基金会里面Apache Server永远会被赋予最大的支持,毕竟大儿子最亲嘛,而Apache的开源服务器软件Tomcat同样值得关注,毕竟Tomcat是开源免费的产品,用户会给予最大的支持。但是经常在用Apache和Tomcat等这些服务器时,你总感觉还是不清楚他们之间有什么关系,在用Tomcat的时候总出现Apache,总感到迷惑,到底谁是主谁是次,因此特意在网上查询了一些这方面的资料,总结了一下。

解析一:

Apache支持静态页,Tomcat支持动态的,比如Servlet等,

一般使用Apache+Tomcat的话,Apache只是作为一个转发,对JSP的处理是由Tomcat来处理的。

Apche可以支持PHPcgiperl,但是要使用Java的话,你需要Tomcat在Apache后台支撑,将Java请求由Apache转发给Tomcat处理。

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

这两个有以下几点可以比较的:

◆两者都是Apache组织开发的

◆两者都有HTTP服务的功能

◆两者都是免费的

不同点:

Apache是专门用了提供HTTP服务的,以及相关配置的(例如虚拟主机、URL转发等等)

Tomcat是Apache组织在符合Java EE的JSP、Servlet标准下开发的一个JSP服务器.

 
 
  1. Runtime r=Runtime.getRuntime();   
  2. Process p=null;   
  3. try   
  4. {   
  5. p=r.exec("notepad");   
  6. }   
  7. catch(Exception ex)   
  8. {   
  9. System.out.println("fffff");   
  10. }   
  11.  

解析二:

Apache是一个Web服务器环境程序,启用他可以作为Web服务器使用,不过只支持静态网页 如(ASP,PHP,CGI,JSP)等动态网页的就不行。

如果要在Apache环境下运行JSP的话就需要一个解释器来执行JSP网页,而这个JSP解释器就是Tomcat, 为什么还要JDK呢?因为JSP需要连接数据库的话 就要jdk来提供连接数据库的驱程,所以要运行JSP的Web服务器平台就需要Apache+Tomcat+JDK。

整合的好处是:

◆如果客户端请求的是静态页面,则只需要Apache服务器响应请求。

◆如果客户端请求动态页面,则是Tomcat服务器响应请求。

◆因为JSP是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销。

C是一个结构化语言,如谭老爷子所说:它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。

解析三:

Apache:侧重于HTTP Server

Tomcat:侧重于Servlet引擎,如果以Standalone方式运行,功能上与Apache等效 , 支持JSP,但对静态网页不太理想;

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

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

小结

总体来说,Tomcat也许永远不会成为Apache最重要的产品,但是谁也阻止不了Tomcat成为主流产品,Apache对于这个小儿子同样也会给相当大的关心。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值