One of the things I often recommend when upgrading or troubleshooting is a "clean install". What I mean is that all traces of the previous product should be removed and a fresh "from scratch" installation attempted. If possible, this should start with the Operating system. Here's my tip list for a clean install of Windows 2000(3) server with Coldfusion.
Don't ever do the "default" installation. Go through and select (or usually de-select the items you don't want. Your goal is to have a server that is specifically tasked and does not have anything running on it that it does not need. Don't install MS Indexing service unless you intend to use it. Are you relaying e-mail? No? Then why is the SMTP service running? How about FTP? Left to it's own devices Win2k installs as "all things to all people". It assumes a multi-purpose role. Don't let it be in charge - take control. You have access to everything! It's not an Apple Dang it!
It amazes me how many people simple install patches without reading the notes. You do not need every patch. Why install patches for windows media player if you are not surfing the web with this server? There are a host of patches for "client" type software on your Win2k box. Read and install selectively. My one caveat is to install the patches for Internet Explorer. Microsoft often includes fixes to lower level network protocols in these patches - at least it used to pre-XP.
Do your install and patch the software before you start tuning and configuring. Make sure it tests out.
Even though you did a custom install there will still end up being services you don't need. Here are a couple of examples.
This is actually new to my check-list but a great idea. The mmc allows you to "export to list" your services. Knowing which services are running on a "clean install" can help you identify changes later on. You can also use PSLIST (see the PS Tools at sys internals) to create a list of processes. Thanks to Brian at Studio Cart for that suggestion.
Lot's of copying and deleting is going on during all that install work. There are log files and events on the drive. Take the time to clear the system, application and security event logs. Delete any other logs you might find and defrag the drives. This isn't done for space reasons. It is done for the purpose of getting a suitable baseline. If you know the logs and drives are clean before you configure the ap server and start production then you will know what has changed or been logged since this starting point.
I put a text file on the desktop called "stats" that contains the initial stats for processor and memory (and anything else germane the system tasking. This gives me a baseline to work with as I monitor the system load.
Most of this list boils down to being methodical and trying to single task the server. If you have tips feel free to share them.