Edge computing met Cloudflare Workers en Deno · Les

Bundelgrootte en codeoptimalisatie

Verklein de bundelgrootte en het CPU-gebruik van uw Worker, zodat uw edgecode sneller laadt en binnen de limieten blijft draaien.

Les 4 van 413 stappen

Bundelgrootte en codeoptimalisatie is een gratis Edge computing met Cloudflare Workers en Deno-les op CoddyKit. Dit is les 4 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Edge computing met Cloudflare Workers en Deno. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Edge computing met Cloudflare Workers en Deno bevat in totaal 4 lessen.

Waarom de bundelgrootte belangrijk is

Workers hebben een limiet voor scriptgrootte (1 MB gecomprimeerd bij het gratis abonnement, meer bij betaalde abonnementen).

Kleinere bundels zorgen voor:

  • Sneller parseren en opstarten
  • Een lager geheugengebruik
  • Minder impact van een koude start

Je code optimaliseren levert aan de edge direct betere prestaties op.

Meten vóór optimaliseren

Wrangler rapporteert bij elke build de grootte van je bundel. Meet altijd eerst.

wrangler deploy --dry-run
# Total Upload: 142.18 KiB / gzip: 38.94 KiB

Tree shaking

Gebruik ES-module-import en export, zodat de bundler ongebruikte code kan verwijderen.

Importeer alleen wat je nodig hebt; importeer nooit de hele bibliotheek wanneer één functie volstaat.

// Good: only pulls debounce
import debounce from 'lodash-es/debounce';

// Bad: pulls all of lodash
import _ from 'lodash';

Geef de voorkeur aan lichte afhankelijkheden

Zware npm-pakketten maken bundels snel onnodig groot. Geef de voorkeur aan kleine bibliotheken die geschikt zijn voor de edge.

  • Gebruik de platformfuncties URL, crypto.subtle en fetch in plaats van polyfills
  • Vervang moment.js door een kleine hulpfunctie voor datums
  • Controleer je bundel met een bundelanalyseprogramma

Webstandaard-API's gebruiken

Workers en Deno stellen veel API's van het webplatform standaard beschikbaar, zodat je geen polyfills hoeft mee te bundelen.

// Native crypto, no dependency needed
const hash = await crypto.subtle.digest(
  'SHA-256',
  new TextEncoder().encode('hello')
);

Minificatie

Wrangler minificeert productie-builds standaard, maar controleer of dit is ingeschakeld.

[build]
minify = true

CPU-tijd verminderen

Workers worden afgerekend en beperkt op basis van CPU-tijd, niet op basis van verstreken tijd. Optimaliseer veelgebruikte codepaden:

  • Vermijd synchrone lussen over enorme arrays
  • Cache berekende resultaten in KV of in het geheugen
  • Stream grote antwoorden in plaats van ze te bufferen

Streamen in plaats van bufferen

Streamen verstuurt gegevens zodra ze worden geproduceerd, waardoor het geheugengebruik laag en het CPU-gebruik stabiel blijft.

const { readable, writable } = new TransformStream();
response.body.pipeTo(writable);
return new Response(readable, response);

Zelden gebruikte code lazy-loaden

Met dynamische import() kun je het laden van codepaden die niet altijd nodig zijn uitstellen, zodat de initiële module klein blijft.

if (needsHeavyFeature) {
  const { process } = await import('./heavy.js');
  process();
}

Je bundel analyseren

Gebruik een analyseprogramma om te zien welke afhankelijkheden de meeste ruimte innemen. esbuild (dat Wrangler gebruikt) kan een metafile genereren.

esbuild src/index.ts --bundle --metafile=meta.json
# upload meta.json to esbuild.github.io/analyze

Samenvatting van aanbevolen werkwijzen

Houd code aan de edge snel en klein:

  • Meet de bundelgrootte bij elke deploy
  • Pas tree shaking toe en importeer gericht
  • Geef de voorkeur aan native Web-API's boven polyfills
  • Minificeer, stream en lazy-load
  • Verminder CPU-tijd in veelgebruikte codepaden

Korte controle

Welke techniek zorgt er het meest direct voor dat de bundler ongebruikte bibliotheekcode kan verwijderen?

Samenvatting

Je hebt zowel de omvang als de snelheid geoptimaliseerd:

  • Meet eerst en pas daarna tree shaking en minificatie toe
  • Gebruik native Web-API's en lichte afhankelijkheden
  • Stream en lazy-load om geheugen- en CPU-gebruik te verminderen
  • Analyseer de bundel om probleemveroorzakers te vinden

Slanke Workers starten sneller op en kosten minder; aan de edge telt elke kilobyte.

Gratis beginnen

Leer Edge computing met Cloudflare Workers en Deno met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
47

Veelgestelde vragen

Is de les “Bundelgrootte en codeoptimalisatie” gratis?

Ja — de volledige tekst van “Bundelgrootte en codeoptimalisatie” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Edge computing met Cloudflare Workers en Deno wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Edge computing met Cloudflare Workers en Deno bevat in totaal 4 lessen.

Wat leer ik in “Bundelgrootte en codeoptimalisatie”?

Verklein de bundelgrootte en het CPU-gebruik van uw Worker, zodat uw edgecode sneller laadt en binnen de limieten blijft draaien. Je oefent met Edge computing met Cloudflare Workers en Deno door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Edge computing met Cloudflare Workers en Deno te beginnen?

Ervaring vooraf is niet nodig. Edge computing met Cloudflare Workers en Deno op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “Bundelgrootte en codeoptimalisatie”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Edge computing met Cloudflare Workers en Deno?

Ja. Elke les over Edge computing met Cloudflare Workers en Deno bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Cachingstrategieën
  2. Cold starts en warm-ups
  3. Monitoring en logging
  4. Bundelgrootte en codeoptimalisatie
← Terug naar Edge computing met Cloudflare Workers en Deno