Alle ressourcer

Tjekliste

EF Core N+1-audit: tjekliste

22 punkter til at finde, bevise og rette N+1-queries, før dine kunder opdager dem.

Hvem er den til

Til .NET-teams, hvis EF Core-endpoints er fine i udvikling og langsomme i produktion, og som vil have en gentagelig måde at gennemgå en kodebase på i stedet for at gætte.

Hvad er der i den

  • Sådan får du EF Core til at vise sin SQL, og hvordan en query-storm ser ud i telemetri
  • Gennemgang af læsestier: projektion, Include, split queries og no-tracking
  • De kodemønstre, der skjuler lazy loading for et hurtigt review
  • Værn, der holder N+1 væk: query-budgetter og tests

Gratis smugkig

Hele tjeklisten har 22 tjek. Her er det første afsnit.

A. Detect it

  • EF Core command logging is on in development (LogTo, or the Microsoft.EntityFrameworkCore.Database.Command log category). Sensitive data logging stays off outside development.

    You cannot judge what you cannot see. Repeated identical SELECTs with different parameters are the signature.

  • Your telemetry records database query count per request or operation.

    Query count is the metric that exposes N+1. Latency alone hides it until it hurts.

  • A dashboard ranks endpoints by queries per request.

    It turns a vague 'the app is slow' into a short, ordered list to work through.

  • An alert fires when an endpoint's query count is far above its normal.

    N+1s are often introduced by an innocent change to a model or a mapping.

  • Development and test data are large enough to show the problem, or you reproduce slow endpoints against production-sized data.

    At ten rows, 11 queries and 1 query feel the same.

Spørgsmål

Er den virkelig gratis?
Ja. Ingen betaling og intet salgsopkald. Du giver mig en e-mailadresse, og PDF’en er din.
Hvad bruger du min e-mail til?
Jeg sender en lejlighedsvis besked om lignende ressourcer og nye artikler. Svar “stop”, så fjerner jeg dig.
Må jeg dele den med mit team?
Det må du meget gerne. Print den, tilpas den, læg den i jeres wiki. Et link tilbage til siden sætter jeg pris på.