首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Tomcat
订阅
撸码骚年
更多收藏集
微信扫码分享
微信
新浪微博
QQ
24篇文章 · 0订阅
Tomcat9的Connector组件(一)
浏览器发送http请求->建立Socket连接->通过Socket读取数据->根据http协议解析数据->调用后台服务完成响应。 其实Tomcat核心处理流程就是通过责任链一步步的组装起来的。 当Tomcat启动后,Connector组件的接收器(Acceptor)将会监听是否…
Tomcat9的容器
Tomcat中有四个容器,分别是Engine,Host,Context,Wrapper。 它们之间是逐层包含的父子关系。Context和Wrapper是“动态添加的”,在站点目录下每放置一个war包,就会动态添加一个Context,在web.xml里每配置一个servlet,就…
Tomcat 7 中 web 应用加载原理(三)Listener、Filter、Servlet 的加载和调用
前一篇文章分析到了org.apache.catalina.deploy.WebXml类的 configureContext 方法,可以看到在这个方法中通过各种 setXXX、addXXX 方法的调用,使得每个应用中的 web.xml 文件的解析后将应用内部的表示 Servlet…
Tomcat 7 的一次请求分析(四)Tomcat 7 阀机制原理
通过这一系列的前三部分看到了一次客户端连接在 Tomcat 内部被转换成了请求对象(org.apache.catalina.connector.Request类的实例),并在该请求对象内部将与本次请求相关的 Host、Context、Wrapper 对象的引用。本文主要分析该请…
Tomcat 7 服务器关闭原理
之前的几篇文章讲了 Tomcat 的启动过程,在默认的配置下启动完之后会看到后台实际上总共有 6 个线程在运行。即 1 个用户线程,剩下 5 个为守护线程(下图中的 Daemon Thread )。 所谓守护线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线…
Tomcat 7 启动分析(三)Digester 的使用
前一篇文章里最后看到 Bootstrap 的 main 方法最后会调用 org.apache.catalina.startup.Catalina 对象的 load 和 start 两个方法,那么就来看看这两个方法里面到底做了些什么。 做的事情就两个,一是创建一个 Digeste…
Tomcat9的Connector组件(二)
Acceptor控制与tomcat建立连接的数量,但只负责建立连接。Acceptor实现了Runnable接口,主要用于接收网络请求,建立连接。 Acceptor是Endpoint的内部类,主要的职责就是监听是否有客户端套接字连接并接收socket,再将socket交由任务执行…
Tomcat9的容貌
Server:整个 Tomcat 服务器,包含多组服务,负责管理和启动各个 Service,同时监听 8005 端口发过来的 shutdown 命令,用于关闭整个容器。Server是最顶级的组件,它代表Tomcat的运行实例,在一个JVM中只会包含一个Server,Server…
Tomcat 7 自动加载类及检测文件变动原理
在一般的 web 应用开发里通常会使用开发工具(如 Eclipse、IntelJ )集成 tomcat ,这样可以将 web 工程项目直接发布到 tomcat 中,然后一键启动。经常遇到的一种情况是直接修改一个类的源文件,此时开发工具会直接将编译后的 class 文件发布到 t…
Tomcat 7 的一次请求分析(二)Socket 转换成内部请求对象
这里首先需要厘清的是 Web 服务器的概念,谷歌了一下,发现这条解释还算靠谱点,【在网络环境下可以向发出请求的浏览器提供文档的程序】。重点有两条:1.网络环境下,2.能够给出响应。用 Java 写过网络通信程序的都知道,这里必然会用到 Socket 编程。我们自己要实现的服务器…