Looking to the Stars
This week we said goodbye to one of the most pleasant people on the internet - especially Reddit, with Peter Mayhew. I was fortunate enough to meet him once, alongside Dave Prowse at one of the Showmaster events in England. A lovely inspirational giant who I'll always remember fondly.
What else has this week brought?
A complete meltdown on Thursday night for Azure. My only free night of the week! Sat down ready to play the new Sea of Thieves update, and I start getting emails about our services experiencing issues. Microsoft admitted there was a DNS related issue which took out most regions and services.
Turns out I couldn't even get in to Sea of Thieves as it runs on Azure!
This got me thinking about fail-over in a multi cloud world and how we can tackle these issues. If anyone has any ideas at the moment or examples of what they do I'd be very interested to hear it.
Watching Twitter on the night I saw several accounts apologising for the downtime so it doesn't seem to be in most service provider's remit to have a multi cloud fail-over solution.
How do you take advantage of excellent solutions like Azure Functions and have a multi cloud fail-over solution?
Learning
Two paths I'm still working through in Pluralsight are Python and the Scrum Framework.
I'm nearly done with the Path for Scrum but I did finish the Python one!!
I've really enjoyed the whole experience even if the final chapter from Robert Smallshire is rather daunting, going in to some heavy detail. After all it is the Advanced section, and I imagine I'll end up revisiting it when I get to that point in my Python career!
I just need to develop something now....
The News
Each week I'll post a few links that I've found the most interesting from technology blogs, Reddit and other parts of the Internet.
Don't forget - it's Microsoft Build time so we should be getting some news about when .NET Core 3 is getting released, and some more Blazor information. Exciting!
There's a long read here about Microsoft's strategy that I would recommend.
Check out some other articles I've found interesting below:
Technology / General
- BBC admits iPlayer has lost streaming fight with Netflix - http://bit.ly/2Gyo8oL
- Eric Schmidt on Twitter - https://twitter.com/ericschmidt/status/1123324575436214272
- Facebook Tries a New Look as Zuckerberg Proclaims a New Era - https://on.wsj.com/2V7AtKy
- Fitbits Smart Watch Sales are Surging - http://bit.ly/2PMW45d
- Gavin Williamson U.K. Defense Chief Is Fired Over Huawei Leak - https://nyti.ms/2LixDOD
- Google Shows First Cracks in Years - https://on.wsj.com/2GMemiN
- Mark Zuckerberg wants to build WeChat for the West - https://econ.st/2DHLnvU
- Microsoft Build Kickoff 2019 - http://bit.ly/2GRmoY0
- Microsoft launches a drag-and-drop machine learning tool - https://tcrn.ch/2Y23gxi
- Microsoft Launches HoloLens 2 Development Edition - http://bit.ly/2vAGlwT
- Microsofts xCloud Reaches New Milestone - http://bit.ly/2V6v9at
developers
- It is perfectly OK to only code at work you can have a life too. - http://bit.ly/2GY10l5
- Next-Paradigm Programming Languages: What Will They Look Like and What Changes Will They Bring? - http://bit.ly/2Y1kg6W
.NET / Azure
- Azure Functions Fundamentals Updated for Version 2 - http://bit.ly/2ZVSGcZ
- Azure SignalR Service now supports ASP.NET! - http://bit.ly/2VuY1bK
- Azure Tips and Tricks - Become more productive with Azure - http://bit.ly/2UEzT24
- Blazor on the Server: The Good and the Unfortunate - http://bit.ly/2DGJvUh
- F# from a C# Developers Perspective Part 1 - http://bit.ly/2ZrVsX1
- F# from a C# Developers Perspective Part 2 - http://bit.ly/2GTCj96
- GraphQL Mutations in ASP.NET Core - http://bit.ly/2W7RSzk
- Logging in a .Net Core Library - http://bit.ly/2V0I0pA
- Using an Azure Service Bus Topic Subscription in an Azure Function - http://bit.ly/2VEHDWq
- When To Use Static Classes In C# - http://bit.ly/2GSX459
- Zero to Kubernetes on Azure - http://bit.ly/2GsTZY2
Have a great week!
Top comments (2)
I would argue that the way to deal with fail over in a cloud environment like Azure is to not rely on it, in its entirety. Sure they have excellent SLAs, but there will be down time.
The way they I would deal with it would to be to have a redundant installation of your application's stack (from the app down to the database) on a number of servers in a data centre, have them auto replicate the live database on a regular interval, and put a load balancer up as the entry point.
The load balancer points at both the cloud and data centre versions of the stack, with the cloud version marked as the priority.
That way when the cloud version goes down (because it will) you can failover to the data centre version.
And you wouldn't even have to have top of the line servers. You could display a message to the users saying that they might expect a slight degradation in page speed because some services are taking longer to respond that usual.
The hard parts would be syncing everything up. Before the failover, you could have an app which keeps the data centre databases in sync with the cloud version, and after the failover you could have the cloud version auto sync with the data centre version.
You'd have to publish all code changes to more places, and you'd have to figure out the load balance, but it would keep your services running when the cloud goes down.
I like this and itβs similar to what I was thinking about when the outage happened.
I guess the thing I need to let go of is trying to replicate the existing stack like for like. So where we use functions in azure we may need to look at standard web apis with similar functionality.
Like you say the databases are a challenge too, but we could do some replication.
Thanks!!