[转]Apache与Tomcat 区别及联系

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

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

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

  二者从如下几点能够比较的: web

  一、二者都是apache组织开发的 数据库

  二、二者都有HTTP服务的功能 apache

  三、二者都是开源免费的浏览器

联系tomcat

  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。

  一、Apache是Web服务器,Web服务器传送(serves)页面使浏览器能够浏览,Web服务器专门处理HTTP请求(request),可是应用程序服务器是经过不少协议来为应用程序提供 (serves)商业逻辑(business logic)。

  Tomcat是运行在Apache上的应用服务器,应用程序服务器提供的是客户端应用程序能够调用(call)的方法 (methods)。它只是一个servlet(jsp也翻译成servlet)容器,能够认为是Apache的扩展,可是能够独立于apache运行。

  二、Apache是普通服务器,自己只支持html静态普通网页。不过能够经过插件支持PHP,还能够与Tomcat连通(单向Apache链接Tomcat,就是说经过Apache能够访问Tomcat资源,反之否则),Tomcat是jsp/servlet容器,同时也支持HTML、JSP、ASP、PHP、CGI等,其中CGI须要一些手动调试,不过很容易的。

  三、Apache侧重于http server,Tomcat侧重于servlet引擎,若是以standalone方式运行,功能上Tomcat与apache等效支持JSP,但对静态网页不太理想。

  四、Apache能够运行一年不重启,稳定性很是好,而Tomcat则不见得。

  五、首选web服务器是Apache,但Apache解析不了的jsp、servlet才用tomcat。

  六、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的服务开销

相关文章
相关标签/搜索