|
|
|
|
|
by Teef
4982 days ago
|
|
Recommendation is to validate "best practice" claims. Doesn't matter what hosting solution used. Measure, measure, measure to make sure not only are you getting said claim but also that the end result meets your expectations. An example is in the past I had 7 "instances" (as shykes points out make sure they are hosted on separate nodes!) 4 of which where load balances Python web app. One of the nodes was overloaded so 1 out of 4 requests was very slow (5-10x). This was a big ajax app so initial page load would hang on the request(s) to that one instance. My point was since I had measured I could see that the node was the problem and now that I am on dedicated EC2 each node is consistant. Good luck. |
|
Regarding your performance issue - most platforms (including dotCloud) enforce ram and cpu separation between nodes, but are vulnerable to IO contention at some level. This is also true for EC2 if you use EBS: your standalone instances will almost certainly, at some point, suffer from degraded and inconsistent performance because another instance is competing for IOPS [1].
You can avoid this with the new "provisioned IOPS" volumes [2], or by skipping EBS altogether for stateless components.
[1] http://blog.scalyr.com/2012/10/16/a-systematic-look-at-ec2-i...
[2] http://aws.amazon.com/about-aws/whats-new/2012/07/31/announc...