We recently moved to Amazon Web Servers and are still learning our way around. Our EC2 Web instance and our RDS MySQL instance (right now we only have 1 of each) seem to be chugging along okay. But I was wondering if we could get even better performance out of them.
We do run a very small site, but certain pages still take awhile to load because of lots of aggregation on the MySQL side.
Here is what our current stats look like:
EC2 Webserver Usage (c3.large)
RDS (MySQL) Usage (db.m1.large)
Of these, only the DB (db.m1.large) is "Provisioned IOPS Optimized".
-
Do non-"PIOPS Optimized" instances still benefit from Provisioned IOPS? Or should we consider a different instance type for our EC2 Webserver?
-
With these stats, do we even need Provisioned IOPS? Would we see any benefit?
-
If Provisioned IOPS will help, how do I know how much I need? How could I test this?
Best Answer
Yes. You benefit from the PIOPS volumes being SSDs under the hood. Optimized instances have dedicated network to the EBS servers, so they get consistent performance. Non-optimized instances interact with EBS along with the rest of their network traffic, so heavy bandwidth use on the physical host can slow you down.
http://aws.typepad.com/aws/2012/08/fast-forward-provisioned-iops-ebs.html
With this in mind, I suspect you'll see performance improvements from PIOPS on the RDS, as you're averaging 50-100 writes and 200-400 reads on the RDS volume - you're likely in that best-effort burst state most of the time.
Your web server is doing zero IOPS from the charts, so I'd guess everything's already living happily in RAM and not hitting the disk. Do check that it doesn't have a secondary volume you should be looking at instead, though.