一 tomcat 源码学习系列

      Tomcat 服务器是一个开源的轻量级Web应用服务器,在中小型系统和并发量小的场合下被普遍使用,是开发和调试Servlet、JSP 程序的首选,相信任何一个java开发基本都有使用过。所以,作为一名java程序猿,学习tomcat源码,是一件我们义不容辞的事。
今天我们这系列学习笔记,重点研究源码对象事tomcat7的,源码下载地址
http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.10/src/apache-tomcat-7.0.10-src.zip
大家可以下载一下,一起研究下tomcat的源码,相信一定还是会让你收获颇丰的。
先大概说一下分析过程,源码分析,我一般会先大体了解整个架构,然后从配置文件入手,项目如何启动,项目如何运行....等等,先看下大体结构图

简化的总体结构图

tomcat的设计对领域模型概念控制的特别好,Server是最高的一层,下面可以包含了很多services,Connector用了处理用户连接,然后封装request和resposne调用container,这个模块被分成endpoint(用于接收tcp/ip请求)、processor(用于将请求封装成request)、adapator(用于适配找到对应的container)。container作为容器,主要有三个孩子:engine、host、context(还有个Wrapper,封装的是servlet层,相当于每个servlet一个包装),三个孩子都是container的子实现类。

如此,一个请求来了,先到了connnector,connnector将其封装信息找到对应engine,在进一步找到host,最后进入上下文context,找到对应的处理类,看下简化的内部结构图


tomcat内部结构

简单

按照习惯,我们将从如下几个维度分析

  1. tomcat 源码分析技巧
  2. tomcat 启动脚本分析部分
  3. tomcat启动源码分析(一)--入口代码Bootstrap初始化
  4. tomcat启动源码分析(二)--入口代码calatina启动介绍
  5. tomcat启动源码分析(三)--http请求nio处理
  6. tomcat启动源码分析(四)--tomcat和jetty区别总结

下面,我们进入第一个部分tomcat的启动脚本分析。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,755评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,369评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,799评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,910评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,096评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,159评论 3 411
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,917评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,360评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,673评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,814评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,509评论 4 334
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,156评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,882评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,123评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,641评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,728评论 2 351

推荐阅读更多精彩内容

  • 转自陈明乾的博客,可能有一定更新。 转原文声明: 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 ...
    LUNJINGJIE阅读 3,968评论 1 33
  • 转自陈明乾的博客,可能有一定更新。 转原文声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、...
    C86guli阅读 4,676评论 6 72
  • 建水紫陶的工艺流程大致有十五个步骤:泥料的制备——揉泥——拉坯——晾坯——修坯——装饰——阴刻——填泥——摊泥——...
    月光寒处空帏冷阅读 1,061评论 0 0
  • 从你的全世界路过,只是路过,却是全世界。 路过,会想到不经意,会想到短暂,会想到顺便的经过,当他与你的全世界联系...
    一偶阅读 211评论 0 1
  • 这是一首反映征人怀念故乡、思念妻室的诗。主人公抛弃妻子久戍在外,他思念家人,归心似箭。 扬之水, 不流束薪。 彼其...
    易道yidao阅读 161评论 0 0