OK, Windoze 2003 server. Plenty of oomph and using MySQL.
you say "plenty" but that is all relative
Just recently we've started having people moan about stuff. Stuff I need to fix. One site is a recruitment site where people can upload CVs and apply for jobs etc. Another is a commerce site which gets fairly heavy traffic and lots of orders. One of my colleagues has also written a Windows app which taps into the database on the web server. A few other things going on too. The load on the database is massive.
People are on and off emailing me with problems they're having using the various sites. Obviously I catch all errors and give nice friendly message, but it's starting to get a bit much and I obviously need to fix it.
I never used to have this problem and I can only assume it's down to the massive amount of traffic.
Unless you have figures of numbers of complaints vs. volume of traffic to the site, then you cannot assume this. The problems maybe due to changes you have made
The question I have is that I really don't know how much abuse a Windows web server can take? Or more importantly a MySQl database server. Am I asking too much of it? Do I need to get another server to spread the load?
I don't understand why, if you are a PoB (Prisoner of Bill- a tied in user of MS products) you are using MySQL
I am woefully unprofessional
Nah, your bosses have given you too wide a remit and no training. Don't beat yourself up.
Here are some things you can try to speed things up
1) look up mysql logging documentation and how the logging works
2) use the logging to understand the read vs write use of your database. This can help with tuning and design. For example, if there are lots of writes then adding indexes will slow the database. If there are lots of reads then adding indexes may speed it up
3) now you this insight, read up on tuning parameters ie how much memory is reserved for index caches
4) use the logging feature of "slow query logging" to see if there are any absolute stinkers of queries you can get rid of or spend time simplifying
5) get quotes from your ISP on a) a front end caching accellorator b) adding extra RAM to the server. Both of these should help performance without any changes having to be made to the software on the server. Or drastic changes like a move from one host to another.
6) look at the over all memory usage on the server. This page
SolutionBase: Improving Windows Server 2003 memory usage seems to explain some of the key concepts, like page faults and how to monitor memory usage