5.12 References

  • "Stopping and Restarting Apache," from the Apache documentation: http://httpd.apache.org/docs/stopping.html.

  • RPM resources:

    • The Red Hat Package Manager web site: http://www.rpm.org/.

    • Maximum RPM, by Ed Bailey (Red Hat Press).

    • "RPM-HOWTO," by Donnie Barnes: http://www.rpm.org/support/RPM-HOWTO.html.

  • CVS (Concurrent Versions System) resources:

    • http://www.cvshome.org/ is the home of the CVS project and includes a plethora of documentation. Of special interest is the Cederqvist, the official CVS manual, available at http://www.cvshome.org/docs/manual/.

    • Open Source Development with CVS, by Karl Fogel (Coriolis, Inc.). Most of the book is available online at http://cvsbook.red-bean.com/.

    • CVS Quick Reference Card: http://www.refcards.com/about/cvs.html.

  • daemontools, a collection of tools for managing Unix services: http://cr.yp.to/daemontools.html.

  • Log collecting and processing tools: http://www.apache-tools.com/search.jsp?keys=log.

  • cronolog, a log file-rotation program for the Apache web server: http://www.cronolog.org/.

  • mod_log_spread, which provides reliable distributed logging for Apache http://www.backhand.org/mod_log_spread/.

  • Spread, a wide area group communication system: http://www.spread.org/.

  • Recall, an open source library for writing distributed, fault-tolerant, replicated storage servers. A Recall-based server will allow you to save and access data even in the presence of machine failures. See http://www.fault-tolerant.org/recall/.

  • Chapters 2, 4, 9, 11, and 28 in UNIX System Administration Handbook, by Evi Nemeth, Garth Snyder, Scott Seebass, and Trent H. Hein (Prentice Hall).

  • Chapters 4 and 5 in Optimizing UNIX for Performance, by Amir H. Majidimehr (Prentice Hall).

  • To learn more about memory management, refer to a book that deals with operating system theory, and especially with the operating systems used on web server machines.

    A good starting point is one of the classic textbooks used in operating system courses. For example:

    • Operating System Concepts, by Abraham Silberschatz and Peter Baer Galvin (John Wiley & Sons, Inc.).

    • Applied Operating System Concepts, by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne (John Wiley & Sons, Inc.).

    • Design of the Unix Operating System, by Maurice Bach (Prentice Hall).

    The Memory Management Reference at http://www.xanalys.com/software_tools/mm/ is also very helpful.

  • mod_throttle_access: http://www.fremen.org/apache/mod_throttle_access.html.

  • mod_backhand, which provides load balancing for Apache: http://www.backhand.org/mod_backhand/.

  • The High-Availability Linux Project, the definitive guide to load-balancing techniques: http://www.linux-ha.org/.

    The Heartbeat project is a part of the HA Linux project.

  • lbnamed, a load-balancing name server written in Perl: http://www.stanford.edu/~riepel/lbnamed/ or http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html.

  • "Network Address Translation and Networks: Virtual Servers (Load Balancing)": http://www.suse.de/~mha/linux-ip-nat/diplom/node4.html#SECTION00043100000000000000.

  • Linux Virtual Server Project: http://www.linuxvirtualserver.org/.

  • Linux and port forwarding: http://www.netfilter.org/ipchains/ or http://www.netfilter.org/.

  • "Efficient Support for P-HTTP in Cluster-Based Web Servers," by Mohit Aron and Willy Zwaenepoel, in Proceedings of the USENIX 1999 Annual Technical Conference, Monterey, CA, June 1999: http://www.cs.rice.edu/~druschel/usenix99lard.ps.gz or http://www.usenix.org/publications/library/proceedings/usenix99/full_papers/aron/aron_html/.

  • IP filter: http://coombs.anu.edu.au/~avalon/. The latest IP filter includes some simple load-balancing code that allows a round-robin distribution onto several machines via ipnat.

  • Perl modules available from http://www.modperl.com/book/source (not on CPAN):

    • Apache::BlockAgent, which allows you to block impolite web agents.

    • Apache::SpeedLimit, which allows you to limit indexing robots' speed.

    Part I: mod_perl Administration
    Part II: mod_perl Performance
    Part VI: Appendixes