推荐一本好书《How Tomcat Works》

上学期忙这忙那的,基本上没时间继续看tomcat的源码。好不容易熬到期末考试结束了,想趁回家过年的空余时间继续研究研究代码,无奈硬盘偏偏坏了,整个寒假就没写过一行代码,只是在空余时间看完了《Java并发编程实践》,看完后惊叹自己对并发编程所知的是如此的皮毛,同时也顺便推荐一下这本书。不过呢,写这篇blog不是为了介绍《Java并发编程实践》,毕竟在网上已经有太多人讨论了。此处是介绍另外一本关于tomcat内核设计的书——《How Tomcat Works》

这本书很低调,知道的人不多,就算你用tomcat已经很久了也未必听说过此书。我也是在tomcat的官方网站上闲逛时,找到的一个链接,是一家名为BrainySoftware的公司出版的,原书介绍见 http://books.brainysoftware.com/index.jsp?show=tomcat ,在CSDN的下载频道也有完整的英文版(包含例程源代码)。书有点老,2004年出版的,那会儿tomcat才出到5.0呢。下面概要描述一下这本书的内容。

这本书是给想了解tomcat内部机制、甚至是想自己做一个简化版tomcat的开发者看的,作者本身也是tomcat的开发人员之一。面对一个庞大的服务器软件(至少对于我们这些菜鸟来说是很大型了),该从何入手介绍呢?作者用了一个很聪明的办法,就是从最最简单的http服务器demo讲起,每一章都增加一些功能、完善demo的设计,一直到把demo变成迷你版tomcat为止,也就大功告成了。

我现在看完了前三章,简单介绍一下内容。首先,引言部分先介绍了相关的背景知识,包括http协议、JSP/Servlet等;紧接着第一章作者写了一个最simple最naive的http服务器,只能处理静态页面,就像本科时学“分布式计算”的一个课堂作业;然后,在第二章,开始我们的Servlet容器之旅,做了一个简单的打印字符串的Servlet容器,但好歹也是“容器”了,能装载就简单的Servlet实例了!到了第三章,开始将容器Container和连接器Connector分离...

总的来说,这本书写的很不错,够基础、够循序渐进,加上作者本身对tomcat的深入理解,所以行文中处处向读者传递着tomcat的设计思想,我想这才是大部分人研究tomcat所希望学到的;此外,书中的源代码许多都源自tomcat,看书之余也可以顺便了解源码,为以后的学习打下基础。美中不足的是,这本书没有再版了,所以书中涉及的代码都是tomcat4或tomcat5的,不能不说是比较遗憾的事;但从另一个角度来看,对于我们初学者来说,有时简单点反倒是好事。

关于本书的中文版

偶然在网上逛,发现有热心人在翻译这本书,也是这几个月才刚刚开始的。已经翻译了四章了,放在Google doc上,下面是地址:

http://docs.google.com/Doc?id=dc32cxpz_31ghgkhqf3

相应的有一个Google group:

http://groups.google.com/group/how-tomcat-works/topics?hl=en

有兴趣的可以加入那个group,为翻译工作做些贡献,起码去充充人气也是不错的

你可能感兴趣的:(开源)