cloud66 provides the full deployment stack on EC2, rackspace, digitalocean and others. You can deploy any git repo and it will analyse the code and configure the ruby app based on the gemfile (postgres, memcache, redis, etc) and install it.
I've been experimenting with Cloud66. Currently everything I have is on heroku. I'm going to be moving a few things over to cloud66.
It's definitely a little bit more work, but once you get over the learning curve and have your manifest/post-deploy hooks setup correctly... It's pretty much auto pilot. Scaling and deployment are a breeze.
I'm running it with digitalocean. Going to be saving a lot of $$.
My favorite part is running my own redis and memcached. No more need for expensive add-ons.