I'm trying to figure out hosting requirements for our organization's site. Any guidance to this would be much appreciated!
I need to know how many / which kind of instances I'll need so I can start planning this in my head.
Info: - We'll be running ExpressionEngine (PHP) to power our sites, there will two sites so we'll be using the Multi-site manager - We receive on average 85k hits daily - off months are around 6k a day, but it all balances out to an 85k average - All images / media will be hosted on S3 - Database to run on RDS - I'll cache the pages in the CMS so minimize load
I know we'll need a few EC2 instances, wondering what you guys suggest in terms of number of instances / which ones. I haven't used the AWS load balancers before, but I'm sure I'll need them.
I appreciate any suggestions, as well as links I could read up on the requirements. Thank you!
Honestly, nobody can answer this question without it being a wild-guess, but perhaps the better thing to do, instead of trying to figure out how many instances you need, is to spend the time instead architecting your site so that in can adapt to use as many instances it needs based on real usage metrics which it collects once it goes live.
AWS provides autoscaling for just this purpose. Take a guess how many instances you need, but setup everything up so that if AWS detects a given threshold has been passed (using a metric that you define), it automatically spins up more instances to meet demand, and then can takes them off-line when it is safe to do so. In general you should spin up extra instances fast, and take them off-line slowly (since you pay for the full hour anyway once they spin up). You can set a minimum and maximum as well, so you don't all of a sudden have to pay for 500+ instances that mistakenly got spun up!.
Even if you knew what would satisfy the load the first week, can you really know what the demand will be in 6-12 months? With autoscaling properly setup you don't have to know ahead of time.
This link is a good starting point; http://aws.amazon.com/autoscaling/