TL-Tomcat 整体架构和处理请求流程解析

我们写一个servlet后,在web.xml里配上我们的路径。然后把项目打包成war包放入webapps目录下

然后这样就返回了

这个war包里面的东西和这个文件夹其实是一样的:

那么最终我们把war包删掉 还有原来文件夹下其他的东西 只剩下这么个.class文件

其实这个web.xml也是可以删掉的。只要我们配置了这个注解路径的话

这个webapps下面每个文件夹其实就代表了一个项目

tomcat部署项目的三种方式:

点击上面的那个部署war包的方面 其实是写死的:

其他两种部署方式很好理解,这个是描述符部署:

我们经常说的应用上下文其实是这个意思,是一个接口继承自容器:

说出这个虚拟主机的作用,到时候访问的时候就会根据域名是什么,去访问。

总共有4个servlet容器 Context主要放的是什么类型的servlet ,wrapper里面主要放置具体的servlet。

对照一下这个图:

每个容器都有管道:

设置一个这玩意 阀门 他会负责将这个请求转发给下一个容器:

就像这样,每个容器里面都有的:

门面模式:

这个退看看:

这个是三次握手的第一步:

java怎样 建立一个TCP连接呢

http请求格式:

相关推荐
Derek_Smart29 分钟前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
NE_STOP1 小时前
MyBatis-mybatis入门与增删改查
java
孟陬5 小时前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
想用offer打牌5 小时前
一站式了解四种限流算法
java·后端·go
华仔啊5 小时前
Java 开发千万别给布尔变量加 is 前缀!很容易背锅
java
也些宝6 小时前
Java单例模式:饿汉、懒汉、DCL三种实现及最佳实践
java
Nyarlathotep01137 小时前
SpringBoot Starter的用法以及原理
java·spring boot
wuwen57 小时前
WebFlux + Lettuce Reactive 中 SkyWalking 链路上下文丢失的修复实践
java
SimonKing7 小时前
GitHub 10万星的OpenCode,正在悄悄改变我们的工作流
java·后端·程序员