前言
一、Tomcat核心组件
二、核心组件协作过程
- ①浏览器首先根据端口号找到连接器,和连接器建立连接。
- ②连接器会根据域名找到对应站点。一个连接器可以访问多个站点,站点也可以被多个连接器访问。连接器和站点是多对多的关系。
- ③站点再根据应用上下文名称找到对应Context。一个站点可以访问多个应用,而一个应用不能被多个站点访问。站点和应用是一对多的关系。
- ④应用在访问对应的资源。应用和资源是一对多的关系。
三、server.xml对应核心组件配置
- Server:顶级组件,代表一个Tomcat实例。可以包含一个或多个Service。
- Service:服务分组,可以连接一个或多个连接器到引擎。name:名称(自定义) Catalina(远程轰炸机)。
- Engine:引擎,没有特殊作用,只是作为容器将Host包装起来 defaultHost:默认指定站点。
- Host:站点,name:域名 appBase:站点根目录 unpackWARs:是否自动解压war包 autoDeploy:是否自动部署。可以有多个站点。
- Context:应用上下文 path:访问的应用上下文名称 docBase:应用上下文包路径。
四、Tomcat请求流程
Valve在server.xml的配置
- Valve:阀门,相当于springboot中的切面,可做拦截、日志、限流等操作,可放在任意组件下。