The Azure pricing mystery…
Microsoft has had their Azure online PAAS offering available for a while now. And while it does promise some awesome capability (mainly, zero-hardware scaling), some of our customer’s can’t help but get confused every time they try to determine “how much” their app will cost per month before they go-live. Many believe it will be too expensive.
The compute and storage pieces are easy enough to calculate. But it is the bandwidth that scares them. Often “older” applications were not necessarily built to be lean. Taking advantage of newer frameworks like ASP.NET MVC can help, but that often requires a complete re-write of the application – usually not a cheap option.
Most of our traditional ASP.NET workflow-based web apps come in at about 100kb per page (including images). If 10 users hammer at it most of the day, their monthly bandwidth would come to about 10gigs. You can scale this out by adding another 1gig per user per month. Here is my spreadsheet calculation:
So, for a 10-user app, you are probably in the ballpark of $280/month (Medium instance, 6gigs database, 10gigs per month bandwidth). That comes to $28/user/month. Not bad really, when you consider the fact that with Azure you do not need to pay for a hardware/technician to patch and maintain your infrastructure (Microsoft does it for you automatically), nor do you have to pay for the server hardware itself, any Windows Server licenses, or the SQL Server licensing.
What other options are there? You can also go for Force.com – which allows you to build your own Salesforce.com-type applications. But there, you will have to essentially rebuild your app from scratch, as there aren’t any “converters” available to port code from ASP.NET over to APEX (the Force.com language). Also, there comparable sever is $50/user/month – a bit pricier, but perhaps the better option if you are going to rebuild your app. Force.com is fairly easy enough for anyone to develop a basic workflow app. With ASP.NET, you are probably looking at hiring someone since it is a traditional programming model.
Is there value in Azure? I’m telling my customer’s yes – if they have existing ASP.NET applications, and no longer want the complexity of having to maintain servers internally within their organization. Azure offers a great “first step into the cloud”.
What if your ASP.NET app has an extensive amount of attachments? Not much different really. Your monthly pricing will go up, but the major cost with Azure is in the instance and the SQL database – not the file storage or the additional bandwidth. But to clarify, I will re-do my calculation to detail that in a follow-up post.