Monitoring .NET Applications with OpenTelemetry and Grafana
Instrumenting your .NET apps with OpenTelemetry is easy. But what about actually seeing those metrics and traces in action? Here's how to stream obser...
Page 8 of 22. Practical .NET and software architecture lessons.
Instrumenting your .NET apps with OpenTelemetry is easy. But what about actually seeing those metrics and traces in action? Here's how to stream obser...
With .NET 10, you can now run C# files directly. No project files, no Main method, just code. In this issue, I'll show you how to use the new `dotnet ...
That viral SQL performance tip about filtering before joining? It is complete nonsense. Here is why query optimizers make it irrelevant.
In this article, we will compare the performance of YARP and Nginx, two popular reverse proxy solutions.
Learn how to build a lightweight, in-process domain events dispatcher in .NET without external dependencies. We'll explore the trade-offs between imme...
Learn how to implement CQRS in .NET without relying on MediatR. This guide walks you through a lightweight setup using simple interfaces, decorators, ...
A practical guide to transforming anemic domain models into behavior-rich aggregates in C# through incremental refactoring, enhancing code maintainabi...
Learn how to implement flexible and resilient event-driven systems in .NET using RabbitMQ as a message broker with practical code examples for produce...
Learn how to untangle bloated services and split them into clean, modular bounded contexts in a .NET modular monolith - one practical refactor at a ti...
What are microservices, and why might they be the right architectural choice for your organization? Microservices offer independently deployable, doma...
Join 66,000+ readers of The .NET Weekly for practical tips and resources to improve your .NET and software architecture skills.