Handling Spam II: Follow-up
As I said in my earlier post, this server has been experiencing some slowness lately. I believe I've narrowed down the problem and finally fixed it after a little help from mod_status.
Troubleshooting my server has always been a Catch-22. You can't fix something that isn't broken (like a server that is working flawlessly) and you can't fix a bogged down server because you can't access any of the necessary monitoring tools. With a little patience and luck, I was finally able to pull up my server status during a period of Apache slowness. My status looked like this:
40 requests currently being processed, 0 idle servers
DWDDDWWDDWWDDWWDWKDWDDWDKDDWDDDKDDDDDWDW........................
................................................................
................................................................
................................................................
That amounts to every available process busy either responding to a client or performing a DNS lookup. HostnameLookups was off, but I found the culprit: my LogFormat for combined was set to the default, which logs %h, the client hostname, in preference to %a, the client IP address. One changed line, and no more blocking due to DNS lookups.
I'll have to keep an eye on things, but I feel good about this fix.