Posts
-
My journey optimizing a Django application
My experience in the Rinha de Backend 2024 Q1 challenge: optimizing a Django + gunicorn API under CPU and memory limits, with gevent, py-spy profiling and connection tuning.
-
Diagnostics using dotnet-monitor + prometheus + grafana
How to use dotnet-monitor to collect diagnostic metrics from .NET applications and visualize them with prometheus and grafana in a docker compose lab.
-
The Threadpool in aspnet and performance issues
What threadpool starvation is in IO bound ASP.NET applications, how to diagnose it with dotnet-counters, and how async/await reuses threads to increase throughput.
-
Data consistency and the Outbox pattern
Guaranteeing data consistency in distributed systems is a big challenge. See how the Outbox pattern and idempotency solve the dual write problem.
-
Input validation and error responses in ASP.NET
How to implement input validation in ASP.NET with DataAnnotations, ModelState and ApiController, and how to customize the error response format.
-
SaveChanges and transaction control in EF Core
How EF Core's SaveChanges controls transactions under the hood: logs, savepoints, and the difference between nested transactions and savepoints in SQL Server.