之前一直比较迷惑Apache与Tomcat的关系,通过查询资料,有所了解,现记录于此。

Apache与Tomcat

两者定位:Apache是HTTP Web服务器,Tomcat是Web容器。

有一个非常形象的比喻:Apache是一辆车,可以装载静态的物件(HTML静态网页等);但不能装动态的水(JSP、CGI等),要装水就需要桶(容器),当然桶也可以不放在车上而单独存放,则该容器即为Tomcat。

两者的主要区别:

  • Apache是世界上最流行的Web服务器(其次是微软的IIS),可以处理浏览器的HTTP请求,默认端口为80;Tomcat是运行在Apache之上的应用服务器,为客户端提供可以调用的方法。Tomcat是一个Servlet容器(可以认为Apache的扩展),可独立运行。
  • Apache只支持HTML等静态普通网页,可以单向连通Tomcat(Apache可以访问Tomcat的资源,反之不然);Tomcat是Servlet容器,可以支持JSP、PHP和CGI等,其中CGI是公共网关接口,可以用Perl编写CGI脚本。
  • Apache侧重于HTTP Server;Tomcat侧重于Servlet引擎。

两者可以整合:当客户端需要请求静态资源,只需要Apache服务器响应请求;当客户端需要动态资源,如JSP,需要Tomcat服务容器(Tomcat可以将JSP解析为Servlet)。由于JSP需要JDK的数据库驱动接口,所以一般组合是Apache+Tomcat+JDK。

两篇介绍Apache服务网器比较好的博客:Apache与Tomcat的区别于联系,http://www.admin10000.com/document/974.html;web服务器apache架构与原理,http://www.cnblogs.com/fnng/archive/2012/11/08/2761713.html。

Servlet容器(Tomcat)

由于Servlet没有main方法,Servlet生命周期方法的调用受控于容器,即容器管理Servlet的生命周期,包括初始化(init)、服务调用(service)和销毁(destroy),Tomcat就是一个Servlet容器。

当Web服务器得到一个Servlet请求时,并不是直接将请求提交给Servlet,而是转交给部署该Servlet的Web容器(Tomcat),由容器向Servlet提供HTTP请求和响应,并由容器调用Servlet的方法,如doGet()和doPost()。更详细的容器处理请求和响应过程,后边再整理。

Web服务器(Apache)与Servlet容器(Tomcat)的更多相关文章

  1. 对于Servlet、Servlet容器以及一个Servlet容器-Tomcat

    Servlet.Servlet容器等内容讲解 转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的 ...

  2. Servlet(1)—Servlet容器tomcat和HTTP协议

    Servlet容器为JavaWeb应用提供运行时环境,它负责管理Servlet和JSP的生命周期,以及管理他们的共享数据. Servlet容器也称JavaWeb应用容器,或者Servlet/JSP容器 ...

  3. Web服务器☞Apache VS Nginx

    Web服务器☞Apache VS Nginx LZ最近公司有一个项目在Web服务器选型上,在Apache和Nginx之间引起了一些讨论.这两者目前都是业内优秀的web服务器,都实现了HTTP1.1协议 ...

  4. Windows(Server)环境安装Web服务器(Apache,PHP,Mysql)图文教程

    Windows下Apache+PHP+MySQL搭建web服务器的方法,windows Server Install Apache PHP MySQL(图文详解) 环境准备: Windows Serv ...

  5. Web服务(Apache、Nginx、Tomcat、Jetty)与应用(LAMP、CMS-WordPress&Ghost、Jenkins、Gitlab)

    Web服务和应用是目前信息技术领域的热门技术.如何使用Docker来运行常见的Web服务器(包括Apache.Nginx.Tomcat等),以及一些常用应用(LAMP.CMS等).包括具体的镜像构建方 ...

  6. [转]web服务器apache架构与原理 &apache 监控

    web服务器                                                                                在开始了解Apache前,我 ...

  7. Servlet学习笔记【1】--- 背景和基础知识(CGI、Web服务器发展史、Servlet简介、任务、继承结构)

    本文主要讲Servlet的基础知识和背景知识. 1 CGI简介 CGI(Common Gateway Interface 公共网关接口)是WWW技术中最重要的技术之一,有着不可替代的重要地位.CGI是 ...

  8. 深入web开发之webserver/servlet容器

    可能按照书上的demo,自己就能做个小型网站,但是在并发下是什么情况呢?生成了多少对象?对象的关系又是什么?这些问题都要慢慢弄清楚. ------作为后端工程师,不仅要会增删改查,还要了解servle ...

  9. Ubuntu14.4下搭配WEB服务器(apache + php + mysql)

    今天,趁着自己动手安装web服务器的余热,将Ubuntu14.4搭配WEB服务器的过程记录下来. “一切皆文件”. 说明:网上关于类似搭配web服务器的教程,案例不计其数,但自己亲自动手“试试”,一定 ...

  10. web服务器-apache

    一.apache详解 1. 概述 apache是世界上使用排名第一的web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的web服务器端软件之一.它快 ...

随机推荐

  1. 基于Jmeter的接口自动化测试实践

    在去年实施了一年的三端(PC.无线M站.无线APP[Android.IOS])后,今年7月份开始,我们开始进行接口自动化的实施,目前已完成了整个框架的搭建以及接口的持续测试集成.今天做个简单的分享. ...

  2. 【liferay】1、使用alloy-UI发送ajax请求

    1.首先liferay要发送ajax请求,那么就需要在jsp中定义resourceURL <portlet:resourceURL var="workDeal" id=&qu ...

  3. Python爬虫(十七)_糗事百科案例

    糗事百科实例 爬取糗事百科段子,假设页面的URL是: http://www.qiushibaike.com/8hr/page/1 要求: 使用requests获取页面信息,用XPath/re做数据提取 ...

  4. Java爬虫——模拟登录知乎

    登录界面,首先随意输入一个账号,登录查看发送表单的请求 可以发现请求是Post : https://www.zhihu.com/login/phone_num 发送的表单是 _xsrf: passwo ...

  5. EularProject 43: 带条件约束的排列组合挑选问题

    Sub-string divisibility Problem 43 The number, 1406357289, is a 0 to 9 pandigital number because it ...

  6. 彻底弄懂 JavaScript 执行机制

    本文的目的就是要保证你彻底弄懂javascript的执行机制,如果读完本文还不懂,可以揍我. 不论你是javascript新手还是老鸟,不论是面试求职,还是日常开发工作,我们经常会遇到这样的情况:给定 ...

  7. 自学Zabbix3.10.1.1-事件通知Notifications upon events-媒介类型email

    自学Zabbix3.10.1.1-事件通知Notifications upon events-媒介类型email 配置媒介Email Administration→Media types->Cl ...

  8. immutable.js 更新数组(mergeDeepWith)

    使用情境: 技术栈为:react + redux + antd (reducer中处理数据使用了immutable.js). 问题:如下图,做一个搜索功能,form表单每改变一次,都会调用一个upda ...

  9. Intellij IDEA更新SVN没有提示语

    更新SVN时IDE下方没有提示语句 解决方法: 点击编辑器右下方的 Event Log 按钮 打开 Show balloons 就可以显示了.

  10. Object.assign()

    https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/assign 说明 Ob ...