类别:程序开发
日期:2020-12-12 浏览:2144 评论:0
使用过美国虚拟主机的朋友可能对Apache都比较了解,因为PHP美国虚拟主机基本都是采用Apache+PHP+MySQL环境。同时,如果美国虚拟主机支持JAVA程序的话,那么大家应该对Tomcat也有所了解。
其实,Apache与Tomcat都是Apache开源组织开发的,主要是用来处理HTTP网页服务的,并且都可以做为独立的Web服务器运行。不过Apache是Web服务器,主要处理HTML语言,而Tomcat是Java应用服务器,可以处理JSP语言。
对于很多新手站长来说,可能对Apache和Tomcat之间的区别还不太清楚。那么,Apache和omcat直接究竟有哪些区别和联系?这里小编就简单来说说,也希望大家对它们二者直接有更好的了解。
Apache服务器特点介绍
Apache服务器是由C语言实现的,专门用来提供HTTP服务,具有简单、速度快、性能稳定特征优势,主要特性如下:
1、主要用于解析静态文本,并发性能高,侧重于HTTP服务;
2、不支持动态请求如:CGI、Servlet/JSP、PHP、ASP等语言;
3、可扩展性强,可以通过插件支持PHP语言,特定情况下可与Tomcat实现连通;
4、是目前全球用户使用量最高的Web服务器。
Tomcat服务器特点介绍
Tomcat是由Java开发且符合JavaEE的Servlet规范的JSP服务器,是Apache的扩展,其主要特性如下:
1、主要用于解析JSP/Servlet,一般JAVA程序语言都需要Tomcat环境支持;
2、支持HTML静态页,但总体运行效率没有Apache高;
3、内置了一个HTTP服务器用于支持静态内容,可以通过Tomcat的配置管理工具实现与Apache整合。
简单来说,Apache是Web服务器,处理HTML、PHP等语言,Tomcat是应用(Java)服务器,处理HTML、JSP等语言。实际上,Tomcat是应用(Java)服务器只是一个Servlet,也可以理解成是Apache服务器的扩展。它们二者之间的主要区别如下:
1、Apache和Tomcat都可以做为Web服务器来运行,但是Apache不能解释Java程序。所以平常租用的Apache环境的美国虚拟主机是无法运行JSP语言的。
2、Apache是专门用了提供HTTP服务的,以及相关配置的(如虚拟主机、URL转发等) ,Tomcat是Apache组织在符合J2EE的JSP、Servlet标准下开发的一个JSP服务器。
3、Apache和Tomcat都是相互独立的,但它们都可以在同一台服务器上集成,具有互通连接的特性。
4、Apache侧重于http server,而Tomcat侧重于servlet引擎,以standalone方式运行的话,功能同Apache差不多, 但支持JSP且对静态网页的支持不太理想。
总的来说,Apache和Tomcat都是一种容器,只不过应用的类型不同。Apache适用于HTML、PHP程序语言,功能像IIS一样,Tomcat是jsp/servlet容器,用于发布JSP及Java语言的。
对于站长来说,如果租用美国虚拟主机的话,可以根据建站程序语言来选择Apache和Tomcat;而如果是租用美国服务器的话,需要了解Apache和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的服务开销
发表评论 / 取消回复