HomeApache Page 4 - Book Review: The Apache Modules Book
The Last Two Chapters and Final Thoughts - Apache
The Apache Modules Book is the latest open-source software development book from Prentice Hall. The book forms part of the Open Source Development Series from Prentice Hall, which includes other titles such as Understanding AJAX and Embedded Linux. Dan Wellman looks at this book chapter by chapter to see whether it's a worthy addition to an open source developer's library.
The next chapter begins with a brief look at the way Apache has evolved over previous versions of the software with regard to databases and looks at the classic LAMP architecture. The Apache database framework is examined in detail, as well as the DBD architecture, The chapter also covers using DBD in a module and discusses, with full examples, how to write your own driver to add support for a database type not supported by the DBD module. This is one area in which Nick Kew is highly respected, having written the dbd_apr module himself.
The final chapter looks at the all-important aspect of debugging modules that you have written. No one writes a complete module for the first time without making a single error, and this chapter provides the means for tracking down and eliminating bugs in your code. It deals specifically with the make up and use of the error log, running Apache under a widely-used debugger and how to trace server crashes. It also looks at using a diagnostic module that looks for problems in filter modules, and the author gives a personal example of how this module had been used to track down a problem with the third-party library libxml2. All in all this is an excellent way to end the main body of the book, but there is also a lot of information that can be found in the appendices.
The book's main focus is using Apache and the HTTP protocol as a basis for applications programming and it helpfully provides the entire HTTP 1.1 protocol as Appendix C. This is great because it means that you can get by using just this one book to learn how to program modules and as the reference you're going to need with respect to HTTP; you don't need to rush off and buy a separate book or spend time looking for the references elsewhere.
One final "feature" of the book that is worth mentioning is that it is Safari Books Online Enabled. Safari Bookshelf is an electronic reference library that allows you to search thousands of online technical reference manuals. You get a 45-day free trial and access to the online version of the book is obtained using the coupon code found in the first few pages of the book. Now if you leave the book at home but find that your need to access it while at work, you can just log on and dive in.
Overall, I thought the book was very well written; the subject is broken into well sized chapters that flow smoothly, the style is engaging and Nick Kew does an excellent job of bringing a complex and code-heavy subject to life, a character that many technical reference books simply lack. As the sole book in existence dedicated to teaching people how to write custom Apache Modules to turn Apache into an application platform, it is a must for anyone that is interested in this area of programming.