了解Apache与Tomcat的关系与区别
《 了解Apache与Tomcat的关系与区别 》
关于Apache的概念:
关于Tomcat的概念:
实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
一、静态页面与动态页面的支持:
apache支持静态页面,tomcat支持动态页面,比如servlet、jsp等,一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由tomcat来处理的。apache可以支持php、cgi、perl,但是需要相关的配置;如果需要使用java的话,你需要tomcat在apache后台支撑,将java请求由apache转发给tomcat处理。
apache是web服务器,而Tomcat是应用(java)服务器,Tomcat只是一个servlet(jsp也翻译成servlet)容器,也可以认为是apache的扩展,但是可以独立于apache运行。
Apache与Tomcat的相似点:
1、两者都是apache组织开发的;2、两者都有HTTP服务的功能;
3、两者都是免费开源的;
Apache与Tomcat的不同点:
1、Apache是专门用了提供HTTP服务的,以及相关配置的(例如虚拟主机、URL转发等等);2、Tomcat是Apache组织在符合J2EE的JSP、Servlet标准下开发的一个JSP应用服务器;
二、 Apache与Tomcat的联系:
Apache是一个web服务器环境程序,启用他可以作为web服务器使用,不过Apache只支持静态网页,如(asp、php、cgi、jsp)等动态网页的就不行如果要在Apache环境下运行jsp的话就需要一个解释器来执行jsp网页,而这个jsp解释器就是Tomcat,有人可能会疑问为什么还要JDK呢?因为jsp需要连接数据库的话,
就要JDK来提供连接数据库的驱程,如果要运行jsp的web服务,就需要 Apache + Tomcat + JDK 环境。
Apache与Tomcat整合的好处:
如果客户端请求的是静态页面,则只需要Apache服务器响应请求;如果客户端请求动态页面,则是交由Tomcat服务器响应请求。因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销。
三、适用环境:
Apache 侧重于http server,而Tomcat 侧重于Servlet引擎,Apache如果以单独运行的方式,其功能上与Apache等效 ,支持JSP,但对静态网页不太理想;
Apache是web服务器,tomcat是应用(java)服务器,Tomcat只是一个Servlet(jsp编译成Servlet)容器,可以认为是Apache的扩展,但是可以独立于Apache运行。
换句话说,Apache是一辆卡车,上面可以装一些沙、石子(如Html、SHtml)等。但是不能装水(asp、php、cgi、jsp),如果要装水必须要有个装水的容器(桶),而这个Tomcat就是放在卡车上装水的桶。