I moved my Web sites to Azure. You won't believe what happened next!
TL;DR: I eventually saved money.
I wrote about the migration of my sites, which is mostly CoasterBuzz and PointBuzz, from a dedicated server to the various Azure services. I also wrote about the daily operation of the sites after the move. I reluctantly wrote about the pain I was experiencing, too. What I haven't really talked about is the cost. Certainly moving to managed services and getting out of the business of feeding and caring for hardware is a plus, but the economics didn't work out for the longest time. That frustrated me, because when I worked at Microsoft in 2010 and 2011, I loved the platform despite its quirks.
The history of hosting started with a site on a shared service that I paid nearly $50/month for back in 1998. It went up to a dedicated server at more than $650, and then they threatened to boot me for bandwidth, so I started paying a grand a month for a T-1 to my house, plus the cost of hardware. Eventually the dedicated servers came down again, and for years were right around $200. The one I had the last three years was $167. That was the target.
Let me first say that there is some benefit to paying a little more. While you won't get the same amount of hardware (or the equivalent virtual resources) and bandwidth, you are getting a ton of redundancy for "free," and I think that's a hugely overlooked part of the value proposition. For example, your databases in SQL Azure exist physically in three places, and the cost of maintaining and setting that up yourself is enormous. Still, I wanted to spend less instead of more, because market forces being what they are, it can only get cheaper.
Here's my service mix:
- Azure Web Sites, 1 small standard instance
- Several SQL Azure databases, two of which are well over 2 gigs in size (both on the new Standard S1 service tier)
- Miscellaneous blob storage accounts and queues
- A free SendGrid account
My spend went like this:
- Month 1: $204
- Month 2: $176
- Month 3: $143
So after two and a half months of messing around and making mistakes, I'm finally to a place where I'm beating the dedicated server spend. Combined with the stability after all of the issues I wrote about previously, this makes me happy. I don't expect the spend to increase going forward, but you might be curious to know how it went down.
During the first month and a half, only the old web/business tiers were available for SQL Azure. The pricing on these didn't make a lot of sense, because they were based on database size instead of performance. Think about that for a minute... a tiny database that had massive use cost less than a big one that was used very little. The CoasterBuzz database, around 9 gigs, was going to cost around $40. Under the new pricing, it was only $20. That was preview pricing, but as it turns out, the final pricing will be $30 for the same performance, or $15 for a little less performance.
There ended up being another complication when I moved to the new pricing tiers. They were priced that any instance of a database, spun up for even a minute, incurred a full day's charge. I don't know if it was a technical limitation or what, but it was a terrible idea. You see, when you do an automated export of the database, which I was doing periodically (this was before the self-service restore came along), you incurred the cost of an entire day's charge for that database. Fortunately, starting next week, they're going to hourly pricing starting next month.
I also believe there were some price reductions on the Web sites instances, but I'm not sure. There was a reduction in storage costs, but they're not a big component of the cost anyway. Honestly, I always thought bandwidth was my biggest concern, but that's because much of what I used on dedicated hardware was exporting backups. On Azure, I'm using less than 300 gigs out.
So now that things have evened out and I've understood how to deal with all of the unknowns from previous months, coupled with a lot of enhancements the Azure team has been working in, I'm in a good place. It feels like it should not have been so difficult, but Azure has been having an enormous growth and maturity spurt in the last six months or so. It's really been an impressive thing to see.