Related products:
Professional Apache Tomcat 5 (Programmer to Programmer)
Hibernate in Action (In Action series)
Ajax in Action
|
Servlets
How Tomcat Works : A Guide to Developing Your Own Java Servlet Container
Format: Paperback
Author: Budi Kurniawan
ReleaseDate: 30 December, 2006
Publisher: BrainySoftware
Rating:
A solid pedagogical way to the implementation of Tomcat 4
The last one I read was Tannenbaums classic "Operating Systems". This is one of the rare books that pave you a way through the implementation of a major software product. The Tomcat book is a lot easier to access: Tomcat is written in Java not C and the author takes a lot of trouble of making code iterations especially for pedagogical reasons. I do very much appreciate this. Both authors have a very clear style. They do not enervate and distract you with any vanity. You have ample time during the read for your own thoughts of how you can do better. Usually I found that my ideas were worse and I learned something more. Sure there are rather small questions of style. The code smells a little like C. There are very many if statements. Some routines are quite long. . . Still it is a pleasure to read the code.
In this book you learn a lot about the implementation of a major software project and a lot about production quality code. You do not learn how to install, administer and use Tomcat. Most is about Tomcat 4. Some ideas are given of the changes due to Tomcat 5. This is a Tomcat 5 aware book but not a book about that version. I am sure this book helps you to actually do extensions of the engine itself, though this certainly is not its main impetus. Be prepared for some very solid reading. Do not worry about the comments with regards to bad editing. The editing is more than adequate.
Much welcome improvements:
(1) Provide an overview of the major interfaces and classes. And provide the central sequence diagram. Put both at a prominent place in the book (maybe inside the book flaps). This should be straightforward and easy for the authors.
(2) Update the book to the newest version of Tomcat. I know this is really asking too much. It takes at least a full time week to read the book, to rewrite takes considerably longer. But it is clear that Tomcat 5 would require even more: an entirely new adapted pedagogically design of the book.
.
powerful interfaces in Tomcat
Yet using all its power can be formidably intricate. Tomcat is the most common container for Java servlets. To help you, the authors spend much space going over the interfaces it offers. Using these is an easy way for your servlets to avail themselves of Tomcat's functions.
Like writing your own logger, specific to your output needs. All it has to do is implement the Catalina Logger interface, and the container can run it. Or, you can use sundry default loggers that come with Tomcat.
The text shows, amongst other things, how Java's interface capability is a profoundly useful enabler of modular code. It lets you integrate easily with Tomcat, using a minimum of coding.
I'm afraid I wasn't that impressed
It wasn't, and it fell far short of my expectations. Having recently finished TCP/IP illustrated, volume 2, which is a line-by-line treatment of the BSD networking code, I was hoping that "How Tomcat Works" would be as thoughtful and as comprehensive a treatment of Tomcat's code. For the most part, the value of the book comes from the author's organization of the source code - first look at the connectors, then look at containers, then look at wrappers, engines, hosts, etc. This organization is valuable if you're just sitting down to dissect the source, since it gives you a place to start. Otherwise, though, the book didn't provide much information that the source code itself (freely available) doesn't. The authors just present the source code and say, "there you go. That's it". They don't delve into the why or the how - they don't show how the sources tie together or discuss areas where Tomcat might be improved (or why it can't be improved in an otherwise obvious way). All in all, if you're the sort of person who'd be interested in reading this book, you probably already know everything it has to teach you.
|
|