N+1-fråga
Vid N+1 följs en listfråga av en extra hämtning per resultat. Strukturen är avgörande, inte bara ett högt antal anrop.
En N+1-fråga uppstår när en applikation först laddar en lista och sedan gör ännu en fråga för varje post. Antalet åtkomster växer därmed med antalet poster.
Ett litet räkneexempel
I en hypotetisk portal följs en lista med 10 beställningar av separata hämtningar av leveransadresserna. Tillsammans blir det 11 databasanrop. Beroende på behovet kan relaterade data även hämtas gemensamt med lämpliga gränser.
Många frågor bevisar inte ensamma mönstret. Sambandet med genomgången av resultaten måste synas. En godtyckligt stor gemensam fråga är inte heller automatiskt bättre. Datamängd, behörigheter och verklig körkostnad behöver fortfarande bedömas.
Källor
Relaterade begrepp
- DatabasfrågaEn databasfråga begär data enligt angivna villkor. Urval, omfattning och ordning ska passa arbetets syfte.
- SvarstidSvarstid behöver en definierad början och ett definierat slut. Ett mottaget API-svar och en användbar vy mäter olika delar.
- LegacysystemEtt befintligt system som fortfarande används, med tekniska och verksamhetsmässiga beroenden som vuxit fram.
- MultitenancyMultitenancy stöder åtskilda kund- eller gruppområden i samma lösning. En tenant är inte automatiskt en person eller en databas.
- WebbläsarcacheWebbläsarcachen sparar lämpliga HTTP-svar för senare bruk. Återanvändning och ny validering följer tillämpliga regler.
- CacheinvalideringCacheinvalidering avslutar återanvändning av en kopia enligt fastställda regler. Källposten är fortfarande en separat sak.
Artiklar om ämnet








Mjukvaruutveckling med ASES
Skräddarsydd programvara, webb- och mobilappar



