I am going to host a business service (a WCF service) in a cloud. I need to know how to choose either Azure or Amazon Web Service. Which one is easiest for access and easiest for deployment?
The headline difference between the two for Windows developers in Microsoft shops:
(If you're working with non-Microsoft technology such as Linux MySQL, Oracle or what-have-you then Amazon offer much stronger solutions.)
Both offer very easy access -- you can use Remote Desktop or command-line tools to get to the virtual machines on both systems for maintenance.
Both have easy deployment with integrated tooling for Visual Studio on both systems. Azure probably has the edge here as deployment through the UI here can automatically update services with multiple instances all in one go without downtime to the service. (I believe you can do this with EC2 but it does need a little scripting.)
So for a WCF application really the differences boil down to what you're prepared to pay for:
If you are happy maintaining Windows boxes, want to configure firewalls and load balancers by hand and need fine-grained control, but don't want to alter your application from how it runs on regular Windows servers -- then Amazon EC2 may be the best option.
If your needs are fairly straightforward and you want someone else to worry about the platform and most of the underlying infrastructure, and don't mind changing your application somewhat to take account of it -- Azure is probably the best choice.
Bear in mind that currently EC2 is somewhat less expensive for most situations than Azure. Here it's hard to give firm guidance as that might not be the case for your application: I suggest you fire up a spreadsheet and put in the numbers.
I just want to add to Jeremy's excellent answer and mention that you can get .Net PaaS on Amazon EC2 with a promising service called AppHarbor.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With