JAVAEE_04_Tomcat服务器
阅读原文时间:2023年07月08日阅读:2

Tomcat服务器

    * 常用的服务器

        - WebLogic服务器

           WebLogic是美国bea公司出品的一个application server。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准
             的安全性引入大型网络应用的开发,集成、部署和管理之中。是目前应用最广泛的Web服务器,支持J2EE规范,而且不断的完善以适应新的开发要求。

        - WebSphere服务器

         WebSphere Application Server 是一种功能完善、开放的Web应用程序服务器,是IBM公司电子商务计划的核心部分,它是基于 Java 的应用环境,用于建立、部署和管理 Internet 和 Intranet Web 应用程序。这一
           整套产品进行了扩展,以适应Web应用程序服务器的需要,范围从简单到高级直到企业级。

        - IIS 服务器

        Microsoft的Web服务器产品为Internet Information Services (IIS),IIS 是允许在公共Intrnet或Internet上发布信息的Web服务器。ⅡS是目前最流行的Web服务器产品之一,很多著名的网站都是建立在ⅡS的平
          台上。IIS提供了一个图形界面的管理工具,称为Internet信息服务管理器,可用于监视配置和控制Internet服务。

        IIS是一种Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。
         它提供ISAPI(Intranet Server API)作为扩展Web服务器功能的编程接口;同时,它还提供一个Internet数据库连接器,可以实现对数据库的查询和更新。

        - Tomcat服务器

         Tomcat是一个实现了JAVA EE标准的最小的WEB服务器,是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且
         开源免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。学习JavaWeb开发一般都使用 Tomcat服务器,该服务器支持全部JSP以及Servlet规范。

         Tomcat 服务器是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试Servlet、JSP 程序的首选。

  * Tomcat服务器的构成

      - Tomcat主要组件:服务器Server,服务Service,连接器Connector、容器Container。连接器Connector  和容器Container   是 Tomcat的核心。

      -  一个Container容器和一个或多个Connector组合在一起,加上其他一些支持的组件共同组成一个Service服务,

         有了Service服务便可以对外提供能力了,但是Service服务的生存需要一个环境,这个环境便是Server,Server组件为Service服务的正常使用提供了生存环境,Server组件可以同时管理一个或多个Service服务。

  *  * Tomcat服务器处理一个HTTP请求的过程

    1、用户点击网页内容,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/1.1 Connector获得。
     
    2、Connector把该请求交给它所在的Service的Engine来处理,并等待Engine的回应。 

    3、Engine获得请求localhost/test/index.jsp,匹配所有的虚拟主机Host。 

    4、Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主    机),名为localhost的Host获得请求   /test/index.jsp,匹配它所拥有的所有的
           Context。Host匹配到路径为/test    的Context(如果匹配不到就把该请求交给路径名为“ ”的Context去处理)。 

    5、path=“/test”的Context获得请求/index.jsp,在它的mapping table中寻找出对应的Servlet。Context匹配到URL       PATTERN为*.jsp的Servlet,对应于JspServlet类。
     
    6、构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet()或doPost().执行    业务逻辑、数据存储等程序。 

    7、Context把执行完之后的HttpServletResponse对象返回给Host。
     
    8、Host把HttpServletResponse对象返回给Engine。 

    9、Engine把HttpServletResponse对象返回Connector。 

    10、Connector把HttpServletResponse对象返回给客户Browser。