title: Tomcat 组件简介
date: 2020/05/06 17:19
先简单介绍一下 Tomcat 中的各种组件,要不你后面听不懂
conf/server.xml
根据Tomcat自身的分类,上面这些元素可以分成四种:
一个Tomcat只有一个 Server.xml,即 一个Tomcat实例只有一个Server 。
它不是一个容器,它只是单纯地扮演着一个包裹的角色。
它代表 Tomcat 实例本身。
Server可配置的属性很少。根据上面摘录的默认配置,Server会侦听localhost的TCP端口8005,当该端口接收到字符串"SHUTDOWN"时,即执行关闭Tomcat操作。
Server有两种特有的组件,一个是GlobalNamingResources(全局命名资源),一个是Service(服务)。
除此之外,还可以有Listener(监听器)这种可以作用于不同层次容器的组件。Server默认配置了六种Listener。配置在Server这一层的Listener对所有容器起作用。
它代表整个 Tomcat 实例,因此它还有一个作用,就是监听 SHUTDOWN 请求。
它是一个顶层组件,用于包裹它下面的多个 Service 组件。
一个Service就是一个完整的服务, 负责将若干个Connector和一个Engine(引擎)包裹在一起 。除此之外,Service还可以配置一个Executor(共享线程池)用于管理所有Connector的线程数量。
如图所示,Service有Executor、Connector和Engine三种组件。其中,每个Connector负责侦听一个TCP端口,接收相应的请求,并转发给绑定的Engine处理。Engine处理完后,通过Connector把结果返回给客户端。在配置了Executor的情况下,所有Connector的线程受Executor统一管理。
它的作用是将多个连接器与容器实例联系起来,使得不同协议的请求可以使用同一个容器来处理。
Engine是Service的请求处理引擎,负责处理所有Connector发过来的请求,并将内部处理完毕的结果返回给Connector。它是最外层的容器。
Engine.name - 引擎的名称
Engine.defaultHost - 默认采用哪一个子容器Host来处理请求
Engine 的作用是可以采用一个连接器接收请求并映射到不同的域名中
一个Host就是一个虚拟主机,对应一个或多个域名。
Host.name - 主机名称(域名)
默认配置定义了一个名为 localhost 的主机。至少要有一个Host的名称与Engine的defaultHost一致。
除了域名外,Host可以通过子节点alias来配置别名。别名的作用与域名一致。例如:
其作用机制如下图所示:
Host.appBase - 虚拟主机的根目录
Host.unpackWARs - 放到 webapps 目录下的 WAR-file 是否应该被解压
Host.autoDeploy - 是否自动部署放到 webapps 目录下的应用
Context代表Host下面的一个虚拟目录。
默认是不配置的
Context.docBase - 应用程序的路径或者是WAR文件存放的路径
Context.path - 此web应用程序的上下文路径
Context.reloadable - 是否支持热部署
如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,并通过类加载器重新加载class文件,以实现在不重启tomcat的情况下重新部署。
Context.crossContext - 不同context是否共享session
开头说过,Connector就是墙上的插座,负责侦听一个具体的TCP端口,并通过该端口处理Engine与客户端之间的交互。默认配置定义了两个 Connector:
Valve的中文含义是阀门,可以简单地理解为Tomcat的拦截器。它负责在请求发送到应用之前拦截HTTP请求,可以定义在任何容器中。默认配置中定义了一个AccessLogValve,负责拦截HTTP请求,并写入到日志文件中。
Listener即监听器,负责监听服务器端的行为。此处需要了解的监听器有两个:
请求地址为: http://my.oschina.net/mzdbxqh
一个网站最少要包括域名和空间,域名就是我们平时所说的网址,空间则是用来放网页内容的。1、申请域名:您的域名需要便于记忆、了解,可以是您品牌的名称的英文或中文拼音。
2、申请空间:也称作虚拟主机,申请空间后备案,备案是不收费的。
* 可用dreamweaver等软件设计好网站后用FTP上传到购买的空间上。
加咱,我可以帮你。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)