Web服务器父与子 Apache和Tomcat区别

开发 后端 前端
经常在用Apache和Tomcat等这些服务器时,你总感觉还是不清楚他们之间有什么关系。在用Tomcat的时候总出现Apache,总感到迷惑,到底谁是主谁是次呢?本文将会给大家一个详细的解答。

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

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

解析一:

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对于这个小儿子同样也会给相当大的关心。

【本文系网络整理,不代表51CTO观点】

【编辑推荐】

  1. Tomcat 6.0.28发布 修复多个漏洞
  2. Apache发布***Tomcat 7版本 多项重要改进
  3. Tomcat 7.0官方文档已发布 Beta版可下载
  4. Tomcat 7偷跑? 正式版目录已存在
责任编辑:佚名 来源: 51CTO整理
相关推荐

2019-08-12 15:44:41

DockerTomcat

2009-01-08 17:45:10

服务器WebLinux

2009-01-16 14:37:57

TomcatWeb服务器应用服务器

2020-03-03 19:24:30

Web服务器ApacheTomcat

2010-09-15 14:50:57

集群负载均衡Tomcat

2020-02-12 13:58:24

服务器高级优化

2009-12-30 10:09:08

Ubuntu Apac

2018-04-02 15:07:01

LinuxApacheWeb服务器

2018-10-23 09:58:23

ApacheNGINXWeb

2018-02-05 10:36:01

APP服务器WEB

2012-02-23 10:02:08

Web服务器应用服务器

2017-10-17 09:15:06

Web服务器区别

2018-05-04 12:22:47

2009-12-30 10:41:27

Ubuntu Apac

2011-03-21 14:41:04

LAMPapacheweb

2017-12-27 10:18:09

ApacheNginx服务器

2017-11-10 08:58:49

Web服务器应用程序

2010-05-21 11:50:54

IIS服务器

2019-04-23 10:48:55

HTTPTomcat服务器

2010-05-17 16:50:38

IIS服务器
点赞
收藏

51CTO技术栈公众号