Dear Tomcat Developers, I've been using Tomcat for years. It interested me so much that last year I spent three months reading the source code. I learned a lot, not only about how the servlet container works but also how to design Java applications in general. I particularly liked the idea of valves and pipelines, as well as the hierarchical containers. Knowing how Tomcat works enables one to write better servlets too, IMO.
I decided to share what I have learned in a book titled "How Tomcat Works". This is supposed to be a tutorial, teaching the reader how the servlet container works and how to build it. It is a big system and at first I had problems explaining it, considering some readers might not have a clue as to how Tomcat ticks. Finally, I decided to build simple implementations of some interfaces and explain the simplified components. In fact, I started by explaining how the java.net.Socket class works in a simple Web server (Chapter 1), followed by a simple servlet container that can't do anything other than run a basic servlet (Chapter 2). Each chapter comes with an application and each chapter's application is built upon the previous chapter's application. From Chapter 1, the application evolves into the full-fledged Catalina 4.1.12. This book will be around 500 pages thick and has 18 chapters. Having said that, I realize I'm no expert. I wish I knew how Tomcat works better. The reason for writing to this mailing list is to ask for favor from you all, the very people who really understand how Tomcat works. I hope you could take some time to read the chapters that I made available for download from my web site www.brainysoftware.com. I'm sure with your feedback and comments this book will be much better than the current form, and in the end could benefit Tomcat users and anyone who has interest in Tomcat. Millions of thanks, Budi Kurniawan