Ways to go about optimizing website performance WordPress, Amazon EC2 Apache and RDS MySQL
- by fuzzybee
I have 6 WordPress websites running on 1 single EC2 instance. All the the websites are connecting to databases in 1 same RDS instance.
Earlier today, traffic to the largest website peaked and the RDS instance went bottle-neck - CPU utilization was 100% for over an hour. It affected all of my websites as it took them all forever to load.
In order to prevent such issue from happening again, which of the following will matter most so that I invest time and effort in first of all?
(I will work on all later, I just need to prioritise now)
To improve caching for all websites
To fine-tune the database server
To fine-tune my Apache server
What will be the effect on user experience for my websites? Some quick searches show that I should limit number of concurrent connections to my web server but wouldn't that prevent users from accessing my websites?
More background:
My largest website has 140k visits and 660k page views a month. The other 5 websites should add up much less than that.
I'm using a large EC2 instance as the web server
I'm using a medium RDS instance as the database server
What I've already done:
Use W3 Total Cache plugin for caching for most the websites, especially the largest one (I can barely anything else in terms of caching I could do for the largest website)
Am I using my resources wastefully or is there simply not enough resources for my websites - or rather, how do I answer that question myself?