Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.
Here are the things that caught my eye recently in .NET. I’d love to hear what you found most interesting this week. Let me know in the comments or on Twitter.
CASPaxos: Linearizable databases without logs
Recently I’ve been playing around with a new algorithm known as CASPaxos. In this post I’m going to talk about the algorithm and its potential benefits for distributed databases, particularly key-value stores.
Link: https://reubenbond.github.io/posts/caspaxos
Excluding health check endpoints from Serilog request logging
In this post I show how to skip adding the summary log message completely for specific requests. This can be useful when you have an endpoint that is hit a lot, where logging every request is of little value.
Globally Require Authenticated Users By Default Using Fallback Policies in ASP.NET Core
You can use Fallback Policies in ASP.NET Core 3.0+ to require an Authenticated User by default. Conceptually, you can think of this as adding an
[Authorize]
attribute by default to every single Controller and Razor Page ONLY WHEN no other attribute is specified on a Controller or Razor Page like[AllowAnonymous]
or[Authorize(PolicyName="PolicyName")]
).
Playwright
Playwright is a Node library to automate the Chromium, WebKit and Firefox browsers. This includes support for the new Microsoft Edge browser, which is based on Chromium.
Link: https://github.com/microsoft/playwright/blob/master/README.md
The F# Path to Relaxation – and what it means for .NET
After all the talk this week about .NET and it’s liveliness, I recommend watching this talk, re: memetic independence