tomcat源码

tomcat6.0.x框架结构图-tomcat 6.x 源码阅读

时光怂恿深爱的人放手 提交于 2019-11-29 08:47:07
2013-09-05 昨天搞域名,没有写blog,愧疚蛮久,还好域名搞定了...嘻嘻 继续行程,记录点滴... : tomcat6.0.x已经通过svn导入eclipse运行,接下来就是阅码之旅。,每个人阅读源码方式可能不尽相同,我第一次,没啥经验,凭空想象自己的方式:了解程序结构,运行程序,跟踪源码,设置断点,打印输出,验证假设,弄清楚启动过程,了解数量流向。 我们都知道tomcat调度Servlet来处理来自HTTP的请求,我猜想原理是这样的:Tomcat启动ServerSocket监听网络端口,tomcat分配线程处理来自HTTP的请求,线程负责解析请求,在请求上调用过滤器,使用反射调用Servlet的service方法来处理请求完成响应,tomcat如何实现调度功能?如何实现处理HTTP协议的请求?结构框架如何。 先看看tomcat6.0.x的框架结构图,在网上看到过多种框架图,有记忆的有两种。 来自 Tomcat 系统架构与设计模式 来自[忘记来自哪个blog了] 第一张图给以的信息很少,只标出了Server,Server下面的多个Service,以及Service中的组件,结构层次很清晰,但是不够细,例如Engine,Host,Context等组件没有画出来,以及他们之间的层次关系也没有,我喜欢第二张图,因为第二张展示了tomcat的结构层次图

Tomcat 源码的获取与部署

冷暖自知 提交于 2019-11-28 18:22:24
目的:获取tomcat源码,部署到eclipse进而分析tomcat的架构体系。 准备工作: svn客户端下载 ant下载,环境变量path配置到ant下面的bin tomcat项目的源码地址: http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags 这里的是tomcat6版本对应的源码,最好选取最新的,不然svn获取代码的时候会提示一个版本的错误。 步骤: 1,新建一个文件夹,比如我的F:/tomcat-6.0.x,右键svn checkout 在URL of respository一栏填上你所选取的版本对应的URL,比如 http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_36/ 然后点击OK。获取源码的过程中到最后可能回报一个版本相关的错误,有可能你选择的不是最新的版本。 2,利用ant进行编译。首先,修改源码目录下面的build.properties.default 修改为build.properties。打开它,修改base.path=你硬盘上存在的目录,比如base.path=F:/tomcatneeded,这样做的目的是,在ant编译项目的时候会有一些依赖的项目需要download。 然后,再命令行下,定位到你的源码目录,然后运行 ant