I am running a PHP/MYSQL website on Windows Server 2012 using IIS 8. I had performance issues on my old server with the CPU spiking above 100% during peak times.
So I've just upgraded my server to a DUAL 8 core Intel® Xeon® E5-2630V3 2.4GHz CPU setup with 64 Gigs of RAM, which is essentially four times the number of cores I had on my old server yet I'm still having the same performance issues. My total CPU is still spiking above 100%.
To make a long story short, I believe my issue is likely related to either PHP or MySQL config (or both). I have been using the default my.ini for MySQL since day 1 (I've only upped the max_input_vars and post_max_size) but I see that there are a number of other config files included with MySQL that sound more appropriate for my server load (my-huge.ini, my-large.ini, etc.).
There is also one called my-template.ini which is the only other ini file that talks about mysql_max_connections. This value is currently set to 100 but according to my calculations I should be able to bump that up to 800, although I'm not sure if this would make any difference in my CPU spikes, and the fact that it is not even included in any of the other sample ini files makes me wonder if it even matters.
Anyways, as you can tell I'm a novice at this server config stuff. I'm primarily just a coder so I'm looking for some help in this matter. Can I simply try one of the other mysql config files and see if that makes a difference?
ADD: I believe I have all the proper indexes on my tables and my queries are not overly complex and when there are very few users on the site, it is very fast.
0 Answers