加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Tomcat处事器的 Server.xml 设置文件详解!

发布时间:2019-02-22 04:45:22 所属栏目:业界 来源:博客园
导读:媒介 Tomcat附属于Apache基金会,是开源的轻量级Web应用处事器,行使很是普及。server.xml是Tomcat中最重要的设置文件,server.xml的每一个元素都对应了Tomcat中的一个组件;通过对xml文件中元素的设置,可以实现对Tomcat中各个组件的节制。因此,进修serve
副问题[/!--empirenews.page--]

 媒介

Tomcat附属于Apache基金会,是开源的轻量级Web应用处事器,行使很是普及。server.xml是Tomcat中最重要的设置文件,server.xml的每一个元素都对应了Tomcat中的一个组件;通过对xml文件中元素的设置,可以实现对Tomcat中各个组件的节制。因此,进修server.xml文件的设置,对付相识和行使Tomcat至关重要。

本文将通过实例,先容server.xml中各个组件的设置,并具体声名Tomcat各个焦点组件的浸染以及各个组件之间的彼此相关。

声名:因为server.xml文件中元素与Tomcat中组件的对应相关,后文中为了描写利便,“元素”和“组件”的行使不严酷区分。

Tomcat处事器的 Server.xml 设置文件详解!

假如认为文章对你有辅佐,接待点赞或转载。文章有疏漏之处,接待品评指正。

一、一个server.xml设置实例

server.xml位于$TOMCAT_HOME/conf目次下;下面是一个server.xml实例。后文中将团结该实例讲授server.xml中,各个元素的寄义和浸染;在阅读后续章节进程中,可以比较该xml文档便于领略。

二、server.xml文档的元素分类和整体布局

1、整体布局

server.xml的整体布局如下:

该布局中只给出了Tomcat的焦点组件,除了焦点组件外,Tomcat尚有一些其他组件,下面先容一下组件的分类。

2、元素分类

server.xml文件中的元素可以分为以下4类:

(1)顶层元素:<Server>和<Service>

元素是整个设置文件的根元素,元素则代表一个Engine元素以及一组与之相连的Connector元素。

(2)毗连器:<Connector>

代表了外部客户端发送哀求到特定Service的接口;同时也是外部客户端从特定Service吸取相应的接口。

(3)容器:<Engine><Host><Context>

容器的成果是处理赏罚Connector吸取进来的哀求,并发生响应的相应。Engine、Host和Context都是容器,但它们不是平行的相关,而是父子相关:Engine包括Host,Host包括Context。一个Engine组件可以处理赏罚Service中的全部哀求,一个Host组件可以处理赏罚发向一个特定假造主机的全部哀求,一个Context组件可以处理赏罚一个特定Web应用的全部哀求。

(4)内嵌组件:可以内嵌到容器中的组件。

现实上,Server、Service、Connector、Engine、Host和Context是最重要的最焦点的Tomcat组件,其他组件都可以归为内嵌组件。

下面将具体先容Tomcat中各个焦点组件的浸染,以及彼此之间的相关。点此查察一分钟设置tomcat的https教程。

三、焦点组件

本部门将别离先容各个焦点组件的浸染、特点以及设置方法等。

1、Server

Server元素在最顶层,代表整个Tomcat容器,因此它必需是server.xml中独逐一个最外层的元素。一个Server元素中可以有一个或多个Service元素。

在第一部门的例子中,在最外层有一个元素,shutdown属性暗示封锁Server的指令;port属性暗示Server吸取shutdown指令的端标语,设为-1可以禁掉该端口。

Server的首要使命,就是提供一个接口让客户端可以或许会见到这个Service荟萃,同时维护它所包括的全部的Service的声明周期,包罗怎样初始化、怎样竣事处事、怎样找到客户端要会见的Service。

2、Service

Service的浸染,是在Connector和Engine表面包了一层,把它们组装在一路,对外提供处事。一个Service可以包括多个Connector,可是只能包括一个Engine;个中Connector的浸染是从客户端吸取哀求,Engine的浸染是处理赏罚吸取进来的哀求。

在第一部门的例子中,Server中包括一个名称为“Catalina”的Service。现实上,Tomcat可以提供多个Service,差异的Service监听差异的端口,后文会有先容。

3、Connector

Connector的首要成果,是吸取毗连哀求,建设Request和Response工具用于和哀求端互换数据;然后分派线程让Engine来处理赏罚这个哀求,并把发生的Request和Response工具传给Engine。

通过设置Connector,可以节制哀求Service的协议及端标语。在第一部门的例子中,Service包括两个Connector:

Tomcat处事器的 Server.xml 设置文件详解!

(1)通过设置第1个Connector,客户端可以通过8080端标语行使http协议会见Tomcat。个中,protocol属性划定了哀求的协议,port划定了哀求的端标语,redirectPort暗示当逼迫要求https而哀求是http时,重定向至端标语为8443的Connector,connectionTimeout暗示毗连的超时时刻。点此查察一分钟设置tomcat的https教程。

在这个例子中,Tomcat监听HTTP哀求,行使的是8080端口,而不是正式的80端口;现实上,在正式的出产情形中,Tomcat也经常监听8080端口,而不是80端口。这是由于在出产情形中,很少将Tomcat直接对外开放吸取哀求,而是在Tomcat和客户端之间加一层署理处事器(如nginx),用于哀求的转发、负载平衡、处理赏罚静态文件等;通过署理处事器会见Tomcat时,是在局域网中,因此一样平常仍行使8080端口。

(2)通过设置第2个Connector,客户端可以通过8009端标语行使AJP协议会见Tomcat。AJP协议认真和其他的HTTP处事器(如Apache)成立毗连;在把Tomcat与其他HTTP处事器集成时,就必要用到这个毗连器。之以是行使Tomcat和其他处事器集成,是由于Tomcat可以用作Servlet/JSP容器,可是对静态资源的处理赏罚速率较慢,不如Apache和IIS等HTTP处事器;因此经常将Tomcat与Apache等集成,前者作Servlet容器,后者处理赏罚静态资源,而AJP协议便认真Tomcat和Apache的毗连。Tomcat与Apache等集成的道理如下图。

关于Connector的更多内容,可以参考我的另一篇文章:详解tomcat的毗连数与线程池

4、Engine

Engine组件在Service组件中有且只有一个;Engine是Service组件中的哀求处理赏罚组件。Engine组件从一个或多个Connector中吸取哀求并处理赏罚,并将完成的相应返回给Connector,最终转达给客户端。

前面已经提到过,Engine、Host和Context都是容器,但它们不是平行的相关,而是父子相关:Engine包括Host,Host包括Context。

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读