When should one use the following: Amazon EC2, Google App Engine, Microsoft Azure and Salesforce.com?

前端 未结 7 549
执念已碎
执念已碎 2021-01-29 18:08

I am asking this in very general sense. Both from cloud provider and cloud consumer\'s perspective. Also the question is not for any specific kind of application (in fact the in

7条回答
  •  花落未央
    2021-01-29 18:54

    Good question! As you point out, the different offerings fit into different categories:

    EC2 is Infrastructure as a Service; you get VM instances, and do with them as you wish. Rackspace Cloud Servers are more or less the same.

    Azure, App Engine, and Salesforce are all Platform as a Service; they offer different levels of integration, though: Azure pretty much lets you run arbitrary background services, while App Engine is oriented around short lived request handler tasks (though it also supports a task queue and scheduled tasks). I'm not terribly familiar with Salesforce's offering, but my understanding is that it's similar to App Engine in some respects, though more specialized for its particular niche.

    Cloud offerings that fall under Software as a Service are everything from infrastructure pieces like Amazon's Simple Storage Service and SimpleDB through to complete applications like Fog Creek's hosted FogBugz and, of course, StackExchange.

    A good general rule is that the higher level the offering, the less work you'll have to do, but the more specific it is. If you want a bug tracker, using FogBugz is obviously going to be the least work; building one on top of App Engine or Azure is more work, but provides for more versatility, while building one on top of raw VMs like EC2 is even more work (quite a lot more, in fact), but provides for even more versatility. My general advice is to pick the highest level platform that still meets your requirements, and build from there.

提交回复
热议问题