|
|
|
|
|
by bjinwright
4881 days ago
|
|
I'm going to make a couple of assumptions and if I'm wrong just ignore the answer. I'm assuming you are using either PHP, Python, Java, Ruby, or .Net. I'm assuming these are either web servers, worker servers, caching servers, or database servers. 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. |
|
You will lose the ability to customize or use obscure frameworks.
On the other hand, you will simply have to do operations such as "increase the number of web workers", or "add more replication for this DB" which are high level.