bjinwright
Show HN: Sammy, a Python library for creating AWS SAM templates
Show HN: Envs – Substitute hard coded vars for environment variables
Show HN: Warrant – Use Python with AWS Cognito with SRP Support
How to Deploy a Serverless WSGI App Using Zappa, CloudFront, RDS, and VPC
Show HN: Kev 0.7 – S3 as Datastore (now with S3-only back end)
Show HN: Kev – S3 and Redis as Datastores (with Redis Indexing)
Show HN: Envs Get env vars in Python with support for bool, list, tuple, dict
How to Achieve 12-Factor App “Config” Glory with Django Settings Files
http://blog.ipoots.com/post/43154090079/how-to-achieve-12-factor-app-config-glory-with-django
So part of being a 12-factor app is storing your config in your environment (http://12factor.net/config). This is how I do that using Django settings files.
With those assumptions made I'm going to suggest some services to use. I don't work for ANY of these companies. I run a small startup that uses most of these companies.
For web servers I would recommend using AWS' Elastic Beanstalk. You don't pay anything extra to use this service in addition to the EC2 servers you are using now. If you use reserved instances it is also cheaper than pretty much any other PaaS out there (Google App Engine gives it a good run for the money). Recently I did a spreadsheet outlining the savings http://goo.gl/AL5Cj. The spreadsheet was done before the most recent AWS price reductions so the m1.small prices aren't right.
For worker servers I recommend using PiCloud. You can install anything you want and they only charge you for the time your jobs use. Granted you have to use Python to interface with jobs but does that really matter in the grand scheme. I personally use Python anyways so its a bonus. Depending on the job it might be more appropriate to use AWS' Elastic MapReduce offering.
For database servers I recommend using either RDS or Xeround (http://www.xeround.com) a MySQL provider if you have to use a relational database. If you have the luxury of using a NoSQL option then use Cloudant (http://www.cloudant.com) a CouchDB DBaaS company or AWS' DynamoDB server.
For caching servers use AWS' Elasticache service or Garantia Data's (http://www.garantiadata.com) Memcached or Redis cloud.