
Tomcat之家
本专栏主要针对tomcat的源码做以分析和讲解。后期还会针对源码的细节进行不断的更新
surpassLiang
视野决定效率
展开
-
Tomcat源码分析-http请求走过的那些路(二)
1. 概述 在上篇文章Tomcat源码分析-http请求走过的那些路(一)中,我们主要讲解了一个Http请求如何被tomcat接受。这里我们简单回顾一下。当Tomcat启动后,Acceptor会开启8080端口用于监听请求事件。当接受到请求,Acceptor会经过一系列的处理,通过轮训的方式转接为poller,poller通过事件处理的方式最终交给任务线程池处理。那么今天,我们就从(org.apache.tomcat.util.net. NioEndpoint.SocketProcessor#doRun)原创 2020-10-26 00:42:55 · 612 阅读 · 2 评论 -
Tomcat源码分析-http请求走过的那些路(一)
1.概述 前面几篇文章主要针对Tomcat的启动做了较为详细的分析。而对于Tomcat来说,还有一块复杂的业务,那便是Tomcat是如何处理请求的。所以,今天我们就走进Tomcat源码,看看http在Tomcat中经历了哪些弯弯道道。 2.Tomcat启动时的那些准备 在Tomcat源码分析--启动流程文章中,我们主要对Tomcat的启动做了较为详细的分析。然而为了更好的进入本次主题,还需要对于Connector的启动这一块做更深层次的分析。那么我们就从org.apache.catalina.conn原创 2020-10-22 00:02:08 · 480 阅读 · 2 评论 -
Tomcat源码分析-服务关闭之谜
1.前言 如果我问大家Tomcat的启动有哪些方式?关闭又有哪些方式?我想大多数人都会说出很多种方式,毕竟我们都天天和Tomcat打交道。对于Windows系统,我们可以双击startup.bat、双击tomcat.exe、Tomcatw.exe以及通过服务启动。Tomcat关闭我们可以通过执行shutdown.bat、关闭黑窗口、Tomcatw.exe或者服务中都有停止的按钮。当然,针对于前两种启动我们还可以使用暴力的方式关闭黑窗口。而针对于Linux系统,我们一般使用startup.sh开启,shut原创 2020-10-20 23:37:52 · 434 阅读 · 1 评论 -
Tomcat源码分析--启动流程
1.概述 要想了解Tomcat的启动流程,必须先弄明白Tomcat有哪些组件。而对于Tomcat组件的层级结构了解,我们必须弄明白Tomcat一个最重要的配置文件“server.xml”,如果有过Tomcat调优经验或者对Tomat有一定了解的话,一定知道这个文件,他位于${tomcat.base}/conf/server.xml。通过这个文件,我们可以配给几乎所有tomcat的参数信息(当然不会包括jvm相关的参数)。那么我们先看一下server.xml的真实面目。为了更清楚的展现Tomcat组件,我把原创 2020-10-19 23:48:39 · 3644 阅读 · 15 评论 -
Tomcat源码分析--源码搭建
1.前言 当时看Tomcat源码的初衷是想弄明白它里面的类加载器的那些事,感觉对于动态部署应用,他就废弃旧的类加载器,新建一个新的加载器去加载应用,感觉是一件很神奇的事,处于此好奇心,决定要看看他的实现思路。然而Tomcat源码环境很早就搭建了,后来由于工作忙一直还没来的及看。看了一周的源码,觉得不记录的东西总少些什么,正如有人说过,没有输出的学习永远都是浅显的。好吧,那就记录一下吧。 2.环境准备 2.1 开发工具准备 1) Idea2018.2 2) jdk1.8.241 2.2 源码准备原创 2020-10-17 11:00:46 · 493 阅读 · 2 评论