Slashdot Mirror


Microsoft Azure vs. Amazon Web Services, For Programmers

Nerval's Lobster writes "Tech writer and programmer Jeff Cogswell does a head-to-head comparison of Microsoft Azure and Amazon Web Services from a pure programming perspective, examining the respective sides' vendor lock-in and vendor-specific APIs (among other issues). 'If you're not using any vendor-specific APIs, then it's safe to say the experience you get on either Amazon or Microsoft will be roughly the same,' he writes. 'But that means you're also not developing an app that necessarily takes advantage of all possible cloud capabilities—not just add-ons, but scalability. Your app might need to expand and grow as your user base grows.' He suggests it's ultimately a tie between the two companies. 'From a strict programming perspective, both companies have their own RESTful API, and their own libraries for using the API.'" The problem with both of these services, though, that RMS could have told you about: "The moment you start using either, you're locked in for the most part."

25 of 64 comments (clear)

  1. This is a solved problem? by kwerle · · Score: 4, Informative

    Please google "Cloud Abstraction Layer".

    Here; I'll help you out:
    https://www.google.com/search?q=cloud+abstraction+layer

    1. Re:This is a solved problem? by dave562 · · Score: 4, Informative

      Now I know we don't actually READ the articles around here, but did you even skim the summary?

      "If you're not using any vendor-specific APIs, then it's safe to say the experience you get on either Amazon or Microsoft will be roughly the same,' he writes. 'But that means you're also not developing an app that necessarily takes advantage of all possible cloud capabilities—not just add-ons, but scalability"

    2. Re:This is a solved problem? by 0123456 · · Score: 3, Insightful

      Which means either:

      1. You end up with a lowest-common-denominator API.
      2. You move most of the smarts into the 'abstraction layer', which then decides how to implement them on different 'cloud' providers, and then you're tied to it instead.
      3. You start using APIs wihch are only properly supported on one system so you're doubly screwed (your software only runs on the abstraction layer using features only supported by one 'cloud' provider).

  2. Why just those two? by bennomatic · · Score: 4, Informative

    I wonder why Cogswell ignored Google's cloud services. They've got the Python- or Java-based AppEngine, and they've got a full virtual server service. There are a lot of other platforms, too, but as far as size and industry impact, I'd put Google on a similar level.

    Funny, though, that out of the three of them, if I were to choose the least "evil" one, it'd be Microsoft.

    Last, but not least, if you're using Azure, I'm pretty sure that New Relic has an agent that's compatible, for performance monitoring.

    --
    The CB App. What's your 20?
    1. Re:Why just those two? by bennomatic · · Score: 2

      (re: the New Relic stuff, I'm referring to .NET server-side monitoring. I'm pretty sure their client-side RUM system works regardless of the hosted platform.)

      --
      The CB App. What's your 20?
    2. Re:Why just those two? by phantomfive · · Score: 2

      Funny, though, that out of the three of them, if I were to choose the least "evil" one, it'd be Microsoft.

      Why? That's a fascinating assertion, and yet you just left it there, alone, without any backup. Poor thing.

      --
      "First they came for the slanderers and i said nothing."
    3. Re:Why just those two? by chrb · · Score: 4, Informative

      Funny, though, that out of the three of them, if I were to choose the least "evil" one, it'd be Microsoft.

      Why? Serious question. App Engine doesn't even lock you in that hard - there are APIs for exporting all of your data, and you can run your own App Engine cloud with an open source implementation like AppScale or TyphoonAE. Google is not hostile to these projects - they actually sponsor AppScale development. Is Microsoft sponsoring any alternative implementations of their server-side cloud software?

    4. Re:Why just those two? by bennomatic · · Score: 2

      It's not so much AppEngine that I think is evil--I actually love it and use it for protoyping web app ideas because it's cheap and easy to use for that purpose. Rather, it's Google and Amazon the companies that I've soured on. Where Microsoft was once the evil empire, they're kind of beaten down and sad. I mean, they're still making bazillions of dollars, but I can't help but think that unless something crazy happens, they'll always be the company that was.

      Google has just extended their tendrils too far, and I'm a little creeped out by them. I used to be an avid defender, but I don't believe the "don't be evil" credo quite so much anymore.

      And Amazon, well again, I think their cloud service is awesome. Brilliant innovation to take their datacenter expertise and sell off those resources as a service. But their overall business model is, I think, predatory and shameful. They're like the Walmart of the on-line world. I've stopped shopping there, and I've asked my wife to do the same. If there's any way to support our local economy, even if it costs a bit more and requires driving and parking and going out of the house and stuff, I think it's important to do so. There's a high cost for convenience and low prices, and we just won't know what it is until it's too late.

      --
      The CB App. What's your 20?
  3. McDonalds or Burger King? by Hazel+Bergeron · · Score: 3, Insightful

    If you have to ask the question, you've already lost.

    1. Re:McDonalds or Burger King? by _Stryker · · Score: 2

      Are we talking fries or burgers? Because the answer is different depending...

  4. Well by kelemvor4 · · Score: 4, Informative

    I've got an azure account with MSDN and TechNET subscription (I don't remember which of the two came with the azure). Processor time on their service is very expensive if you go beyond the allotment of free time given to you by those subs. The service works well, although getting your code to the servers is a little kludgy. Given the high cost, I think you'd be hard pressed to find value when weighed against leasing a full server or even multiple servers from a regular hosting provider. The exception to that would be if you had a simply massive load requirement and just couldn't muster enough horsepower out of a few traditional servers.

    For what I would am doing, the cost is unreasonable. I've never really looked at amazon; so I can't compare them.

  5. Summary by hawguy · · Score: 4, Informative

    Briefer summary of linked article:

    Amazon and Azure use different API's, if you use one vendor's API, you're locked into that vendor. There might be libraries available that hide the vendor specific API's but that's outside the scope of the article.

  6. Techwriter != Developer by Anonymous Coward · · Score: 5, Informative

    You're never forced into using AWS APIs. They are there if you want to use them. If you don't want to use S3, you stand up a storage server as an instance. No vendor lock-in. If you don't want to use RDS, you build your own DB instance. No vendor lock-in. If you don't want to use ELB, you build your own load balancer instances. AWS offers shortcuts for those developers who want big features and don't want to build them. It doesn't force them on you.

  7. Another comparison, from programmers by leonbloy · · Score: 5, Informative
  8. Re:After what happened to Wikileaks? by Anonymous Coward · · Score: 2, Insightful

    As if your ISP or colo wouldn't give you the boot "any time they have a problem with you" either. LOL

  9. Niether! by Otter_79 · · Score: 2

    use Skytap! So Much Better ;)

  10. Re:After what happened to Wikileaks? by medv4380 · · Score: 4, Insightful

    Really? You're hung-up on that little point? Your domain name could be seized by ICE and who knows what else, and you're concerned that the Amazon caved to pressure to pull Wikileaks? This kind of thing has been going on for a long time before Wikileaks and Amazon. It's apart of the risk of doing business in this world. There is no way around it.

  11. Depends by Kupfernigk · · Score: 4, Interesting
    For what we are doing, the principal benefit of Azure is the scalable SQL Server.The ability to fap around with little 1Gbyte databases and then scale them all the way to 150Gbytes (and beyond with sharding) is what sold me on it. The cost of hosting your own SQL Server is much higher.

    I'm also not so convinced that the VM cost is that way out of line. The performance we get, both in and outbound, is high, and we pay considerably less than we used to for our hosting. I guess you have to compare like with like taking into account bandwidth, scalability and SLA, and the flexibility to dial cost up and down as the machines are scaled, which you do not have with a true hosted server and database.

    --
    From scarped cliff or quarried stone she cries "A thousand types are gone, I care for nothing, no not one."
  12. Rackspace by rwven · · Score: 2

    It's worth noting that rackspace's cloud system is pretty slick and easy to use now as well. Nowhere near as big as those two monsters, but it's a very well done system that is very easy to use, and pretty cheap on top of it.

  13. Re:Deal with M$ and you're screwed by larry+bagina · · Score: 3, Funny

    Amazon will sell you the lube.

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

  14. Migating Platform Lock-in by ndykman · · Score: 3, Insightful

    The article seems to bemoan the lack of standards and APIs for relatively new technologies like blob storage, message queuing and the like.

    In short, it's the same situtation everyone deals with when choosing a platform. Take full advantage of the specific platform and lose portablity, or code to a portable subset and tradeoff ease of implementation for platform independence.

    You can minimize your dependency on a third-party API if you use an API of your own to code against. Creating a set of interfaces that provide the blob, queuing and other cloud features for your project not only isolates the cloud-specifc code to one place, but it makes it more testable (using test-doubles, fakes, etc).

    This is a problem, but it is a well understood one with a time tested solution.

  15. Dismissing third-party API implementations by DragonWriter · · Score: 2

    Amazon and Azure use different API's, if you use one vendor's API, you're locked into that vendor.

    Of course, TFA acknowledges that there are several (both public cloud and open-source software for private-cloud implementations) alternatives that support Amazon APIs, but dismisses them as unlikely to actually work with real apps no substantive reasoning presented.

    It really looks like the author had a conclusion in mind before even beginning to look at the facts.

  16. I love both but I think Azure has taken the lead by elabs · · Score: 2

    I've used both cloud platforms for the past few years and I really enjoy both of them. I do think that in the past few months the Azure tools have gotten a lot better and easier to use.

  17. Direct hardware access.. by HerculesMO · · Score: 2

    I like Azure for the SQL (as somebody else mentioned) but my biggest beef with them is no ability to talk to the hardware. We are doing some CUDA development, and with Amazon I have the ability to talk direct to the hardware in a VM... not so with Azure. It's a niche need but something I'd like to see.

    --
    The price is always right if someone else is paying.