I'm looking for a solution like Heroku where I can push my code to but without the restriction of the limited resources that Heroku provides (without me having to manually upgrade resources).<p>I know ec2 can handle this kind of thing but if I understand correctly, it would still require me to write extra code to start and stop ec2 instances based on traffic.<p>I want to be able to just upload my web app somewhere and have it scale no matter how many requests it get. I shouldn't have to manually purchase resources, that should happen automatically based on the traffic the app is getting and the resources it needs to support that traffic.
You don't want EC2, you want AWS Elastic Beanstalk. However it only supports Java, .NET and PHP: <a href="http://aws.amazon.com/elasticbeanstalk/" rel="nofollow">http://aws.amazon.com/elasticbeanstalk/</a>
google app engine. set the request delay in admin console, architect for scalability with datastore (or use less scalable cloud sql). choice of python, go, java (and jvm languages like clojure).