BlogVibecode

Mijn AI-app is ineens traag geworden

Hij deed het prima met tien rijen en kruipt nu bij duizend. Vier oorzaken die bijna altijd de verklaring zijn, van makkelijkst naar vervelendst om te repareren.

Door Bas Voets5 min lezen

Traag worden gebeurt zelden geleidelijk. Het valt ineens op, meestal rond de eerste echte gebruikers. Dat komt doordat de meeste van deze oorzaken pas beginnen te wringen boven een paar honderd rijen, en tot dan toe alles snel oogt hoeveel er ook fout zit.

1. Alles ophalen en daarna pas filteren

De klassieker. De app haalt de hele tabel op en zoekt daarna in de browser het juiste eruit. Met dertig rijen merk je niets. Met tienduizend stuur je bij elk bezoek tienduizend rijen over de lijn, waarvan er twintig getoond worden. Filteren en sorteren horen in de database, niet in het scherm.

2. Een verzoek per rij

Je haalt een lijst orders op en vraagt daarna per order de klantnaam erbij. Vijftig orders is eenenvijftig verzoeken. Dit is het patroon dat AI-tools het vaakst neerzetten, omdat het per stuk logisch leest. Eén query die de klant meteen meeneemt vervangt de hele stapel.

3. Geen index op waar je op zoekt

Zoek je op e-mailadres, filter je op status, sorteer je op datum: zonder index loopt de database elke rij langs. Dat is bij duizend rijen niet te merken en bij honderdduizend pijnlijk. Een index toevoegen is één regel en het effect is meestal een factor tien of meer.

4. Beelden die niemand verkleind heeft

Foto's die gebruikers uploaden komen rechtstreeks uit een telefoon: vier megabyte per stuk. Staan er twintig op een pagina, dan is dat tachtig megabyte voordat er iets te zien is. Verkleinen bij het uploaden lost dit permanent op.

Welke van de vier het is, zie je zo

  • Druk op F12, tabblad Network, laad de pagina opnieuw. Tientallen vergelijkbare verzoeken achter elkaar is oorzaak 2.
  • Eén verzoek dat megabytes groot is, is oorzaak 1.
  • Eén verzoek dat klein is maar seconden duurt, is oorzaak 3.
  • Verzoeken naar plaatjes die samen het grootste deel van de tijd opeten, is oorzaak 4.
Traagheid is bijna nooit een gebrek aan servers. Het is meestal te veel vragen, of één vraag die te veel terugkrijgt.

Alle vier zijn goed te repareren zonder de app opnieuw te bouwen, en meestal zit je binnen een dag op iets wat wel meeschaalt. Wat het niet oplost, is een datamodel dat er structureel naast zit; dat merk je doordat elke reparatie een nieuwe traagheid ergens anders blootlegt.

Laten we bouwen

Vertel wat je
wilt bouwen.

Een gesprek van een half uur. Je krijgt een eerlijk antwoord over wat het kost, hoe lang het duurt en of het slim is om te bouwen.

Bas Voets · Webframer
0:00 / 0:00
Mijn AI-app is ineens traag geworden