The last nail in the Windows hosting coffin

posted by Jeff | Sunday, August 23, 2020, 1:20 AM | comments: 0

I decommissioned the Windows-based app service plan in Azure that was home to my sites since I moved them in 2014. All of the sites are now running on Linux-based app services. It also means that I have nothing left running old school .NET Framework, as it's all .NET Core. Core stuff runs on both Windows and Linux. I've been trying to get to this spot for a bunch of reasons:

  • All of the Linux pricing is significantly cheaper with more RAM and CPU time. I don't totally understand that since, you know, Microsoft owns Azure and owns Windows, but OK.
  • Anecdotally, everything runs faster on Linux. I moved my build and deployment pipelines last year to the Linux flavor (where I could), and they're all faster. It definitely builds, deploys and starts faster.
  • Getting to .NET Core 3.1 already gets you a magical performance boost. Most everything now is rendered in under 20ms, and most of that time is getting data across the wire from SQL or Redis or whatever.

As I mentioned last weekend, the last step in this journey was to port all of the PointBuzz stuff to Core. At the start of the year, we moved the forums out to the hosted POP Forums, leaving the rest of the site in a place where Walt and I can easily modify it. When I ported CoasterBuzz a couple of years ago, I made the mistake of trying to use the Core version of Entity Framework, the ORM. That was a terrible idea because it works differently enough that it hurt. Also, EF sucks. It's a leaky abstraction that you have to use just right or suffer performance issues, and it leaks into all areas of your app. So I threw all of that away and just used Dapper with some basic SQL. I converted most everything in an evening last week. The last task was just to get some of the CSS fixed, since it was built with an old version of Bootstrap.

Again, there are some pretty great cost wins here, and just using Linux app services, I'll reduce my bill by $50/month. Now, if I want to spend the same money, I can get insane performance over what I had, but that doesn't seem necessary. Everything I have online is silly fast already. 

None of this means that I'm now some kind of ninja at the command line. That it's Linux under the hood means almost nothing to me, because this is all platform-as-a-service. I know that there are subtle differences in how things are configured, and that under the hood, Linux app services are actually running as containers. Even the deployment stuff is pretty much the same.

Things have come a long way since the days when I had a server under my desk connected to a T-1 at my house.


No comments yet.

Post your comment: