"Stopping and Restarting Apache,"
from the Apache documentation:
http://httpd.apache.org/docs/stopping.html.
RPM resources:
CVS (Concurrent Versions System)
resources:
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.