Simple & Effective Performance Tips
Your end users complain that your Web pages load slowly and they don't intend to wait! So you need to dust off your system topology diagram and understand which servers user traffic travels. Then you need to determine if CPUs are busy on these systems, if they are busy (i.e., above 85%), you need to track down which process is using the CPU cycles; if CPU seems fine (i.e., under 85%), then ask yourself if memory is running out? If your system is memory-bound, you could be paging to disks - disk I/O is a performance killer. If memory is the issue, find out which process(es) are hogging memory - and they could be abusing memory too (e.g., memory leak, or loading large Word files into memory for processing); if your systems have pletty of free memory, then you need to check if your disk I/O is high. If disk I/O is high, you need to find out which process or thread is writing to and reading from the disk! Finally, if all the above checked out fine, ask yourself, if network bandwidth is maxed out: traffic is so high that responses from your Web site simply cannot push through the thin network "pipe". But ask yourself, is your application supposed to push that much data?
http://performancewiki.com/home.html
1) CPU
2) Memory
3) IO
4) Network
5) App Monitor & tuning