Handleiding voor Response Caching en CDN-integratie

Optimaliseer de prestaties van de Smart Money API met intelligente cachingstrategieën. Leer over HTTP-cacheheaders, ETag-validatie, CDN-integratie en client-side cachingpatronen om latentie en bandbreedtekosten te verminderen.

Gepubliceerd op 21 maart 2026 16 minuten leestijd Prestaties

Caching Overzicht

Smart Money API-endpoints leveren cryptovalutamarktgegevens die met verschillende frequenties veranderen. Sommige gegevens (walvisadressen, funding rates) worden elke paar seconden bijgewerkt, terwijl andere gegevens (historische analyses, educatieve content) urenlang statisch blijven. Intelligente caching verbetert de prestaties aanzienlijk en verlaagt de kosten.

De Smart Money API implementeert een drielaagse cachingstrategie:

  • CDN Edge Cache — Wereldwijde contentlevering met automatische cache-invalidatie
  • HTTP Browser Cache — Client-side caching met standaard HTTP-headers
  • Application Cache — In-memory caching voor veelgebruikte datasets

Prestatie-inzicht: Gecachte reacties worden 50-100x sneller geleverd dan nieuwe API-aanvragen en besparen aanzienlijk bandbreedte. Een goed geïmplementeerde caching kan de gegevensoverdracht met 70-85% verminderen.

Elke Smart Money API-reactie bevat cache-instructies die aangeven hoe lang gegevens geldig blijven. Het begrijpen en correct implementeren van deze instructies is cruciaal voor optimale prestaties.

Basisprincipes van Caching

HTTP-caching werkt op basis van response-headers die aangeven of content kan worden gecached en voor hoe lang.

Cache-Control Header

Het primaire mechanisme voor het beheren van cachegedrag. Elke Smart Money API-reactie bevat een Cache-Control-header met:

  • max-age — Duur in seconden dat de reactie geldig blijft
  • public/private — Of tussenliggende caches het kunnen opslaan
  • must-revalidate — Of de versheid gecontroleerd moet worden voor levering
  • no-store — Sla gevoelige gegevens niet op

Voorbeeld Cache Headers

Verschillende endpoints hebben verschillende cachevereisten:

Response Headers
// Walvisadresgegevens (wordt elke 5 minuten bijgewerkt)
Cache-Control: public, max-age=300
ETag: "abc123def456"
// Real-time funding rates (wordt elke seconde bijgewerkt)
Cache-Control: public, max-age=1
ETag: "xyz789abc123"
// Historische gegevens (verandert niet)
Cache-Control: public, max-age=86400, immutable
ETag: "static-content-v1"

Cacheduur per Endpoint Type

Gegevenstype Cacheduur Gebruiksscenario
Real-time Funding 1-5 seconden Live trading, positiegrootte
Walvisbewegingen 5 minuten Signaalbevestiging, meldingen
Dagelijkse OHLCV 1 uur Technische analyse, grafieken
Historische Analyse 24 uur Backtesting, onderzoek
Statische Content 7 dagen API-docs, handleidingen, configuratie
Krijg uw API-sleutel in 30 seconden

Klaar om te bouwen? Vraag een gratis API-sleutel aan (200 calls/dag, geen kaart nodig) en begin met het ophalen van live walvis-, funding- en on-chain gegevens.

Vraag uw API-sleutel aan →

HTTP Cache Headers

Smart Money API-reacties bevatten verschillende cache-gerelateerde headers die samenwerken om de prestaties te maximaliseren terwijl de gegevensversheid behouden blijft.

Cache-Control: De Primaire Header

Beheert het cachegedrag voor browsers en tussenliggende caches:

Cache-Control Directives
// Openbare gegevens, cache voor 5 minuten
Cache-Control: public, max-age=300
// Privégegevens, alleen in browser cachen
Cache-Control: private, max-age=3600
// Onveranderlijke content, cache voor altijd
Cache-Control: public, max-age=31536000, immutable
// Altijd revalideren voor levering
Cache-Control: public, max-age=0, must-revalidate
// Sla gevoelige gegevens niet op
Cache-Control: private, no-store, no-cache

Expires Header (Verouderd)

Voor oudere clients biedt Smart Money ook de Expires-header (HTTP/1.0):

Expires Header
// Absolute vervaltijd
Expires: Wed, 22 Mar 2026 14:30:00 GMT
// Cache-Control max-age heeft voorrang in HTTP/1.1

Last-Modified Header

Geeft aan wanneer content voor het laatst is bijgewerkt, waardoor conditionele aanvragen mogelijk zijn:

Last-Modified Gebruik
// Reactie bevat Last-Modified
Last-Modified: Wed, 21 Mar 2026 10:15:30 GMT
// Client revalideert met If-Modified-Since
If-Modified-Since: Wed, 21 Mar 2026 10:15:30 GMT
// Als ongewijzigd, reageert server met 304 Not Modified
HTTP/1.1 304 Not Modified

Vary Header

Vertelt caches welke aanvraagheaders van invloed zijn op de reactie (authenticatie, parameters):

Vary Header
// Reactie varieert op basis van authenticatie en symbolen
Vary: Authorization, X-Symbols
// Caches slaan aparte versies op voor verschillende waarden

ETag en Conditionele Aanvragen

ETags (Entity Tags) bieden een efficiënte manier om gecachte content te valideren zonder het volledige response-body te downloaden.

Hoe ETags Werken

  1. Eerste Aanvraag — Client vraagt gegevens aan, server reageert met ETag
  2. Cacheopslag — Client slaat reactie op met ETag
  3. Volgende Aanvraag — Client stuurt If-None-Match header met gecachte ETag
  4. Validatie — Als data ongewijzigd is, stuurt server 304 Not Modified terug
  5. Bandbreedte Bespaard — Geen response body verzonden, enorme besparing in bandbreedte

ETag Implementatie

Eerste Verzoek & Reactie
// Eerste verzoek
GET /v1/whales/btc HTTP/1.1
// Reactie bevat ETag
HTTP/1.1 200 OK
ETag: "8a3b9c2d"
Cache-Control: public, max-age=300
Content-Type: application/json
{...response body...}
Voorwaardelijke Hervalidatie
// Na cache verloop, stuur If-None-Match
GET /v1/whales/btc HTTP/1.1
If-None-Match: "8a3b9c2d"
// Als ongewijzigd, reageert server met 304
HTTP/1.1 304 Not Modified
ETag: "8a3b9c2d"
Cache-Control: public, max-age=300
// Geen body verzonden! Bandbreedte bespaard

ETag Sterkte

ETags kunnen sterk of zwak zijn:

Type Formaat Gebruiksgeval
Sterke ETag "8a3b9c2d" Byte-voor-byte identiek, gebruik voor validatie
Zwakke ETag W/"8a3b9c2d" Semantisch equivalent, voor weergave wijzigingen

Cache Control Directives

Het begrijpen van Cache-Control directives stelt je in staat om optimale cachingstrategieën voor je applicatie te bouwen.

Directive Referentie

Directive Betekenis Voorbeeld
max-age Seconden dat de reactie vers blijft max-age=300
public Cache kan opslaan en delen public
private Cache alleen voor ontvanger private
must-revalidate Hervalidateer wanneer verouderd must-revalidate
no-cache Moet voor gebruik hervalidateeren no-cache
no-store Helemaal niet cachen no-store
immutable Verandert nooit, cache voor altijd immutable
s-maxage CDN cache duur s-maxage=3600

Praktische Cache-Control Patronen

Veelvoorkomende Patronen
// Patroon 1: Browser cache, CDN voor 1 uur
Cache-Control: public, max-age=300, s-maxage=3600
// Patroon 2: Per-gebruiker data, geen proxy cache
Cache-Control: private, max-age=1800
// Patroon 3: Altijd vers, altijd controleren
Cache-Control: public, no-cache, must-revalidate
// Patroon 4: Onveranderlijke versie asset
Cache-Control: public, max-age=31536000, immutable

CDN Integratie

Smart Money API levert reacties via Cloudflare's wereldwijde CDN-netwerk, waarbij reacties automatisch worden gecached op edge-locaties wereldwijd voor minimale latentie.

Hoe Smart Money CDN Werkt

  1. Gebruikersverzoek — Verzoek komt aan op dichtstbijzijnde Cloudflare edge-locatie
  2. Cache Controle — Edge controleert of reactie gecached en vers is
  3. Cache Hit — Indien gecached, direct serveren met <10ms latentie
  4. Cache Miss — Indien niet gecached, ophalen van originserver
  5. Opslaan en Serveren — Cache reactie en lever aan gebruiker

Cache Key Configuratie

Cloudflare gebruikt cache keys om gecachte reacties uniek te identificeren. Standaard:

  • Request pad en query parameters zijn inbegrepen
  • De meeste headers worden genegeerd (om cache hits te maximaliseren)
  • Authorization headers zijn NIET inbegrepen (geen account lekken)
  • Aangepaste headers kunnen worden inbegrepen via Vary header

CDN Purging

Smart Money purgeert automatisch CDN cache wanneer data wordt bijgewerkt:

Handmatige Cache Purge
// Purge specifieke URL van CDN
curl -X POST "https://api.smartmoneyapi.com/v1/cache/purge" \
-H "Authorization: Bearer token" \
-d '{
"urls": [
"https://api.smartmoneyapi.com/v1/whales/btc"
]
}'

CDN Prestaties Meten

Controleer response headers om te zien of verzoek vanuit cache is bediend:

Response Headers
// Cache hit van CDN edge
CF-Cache-Status: HIT
CF-RAY: 8a9b7c6d5e4f3g2h
Age: 45 // seconden sinds gecached
// Cache miss, opgehaald van origin
CF-Cache-Status: MISS
Age: 0

Client-Side Caching

Implementeer caching in je applicatie om API calls verder te verminderen en responsiviteit te verbeteren.

Browser Cache Implementatie

JavaScript Caching
// Maak cache opslag
const cache = new Map();
async function fetchWithCache(url) {
// Controleer eerst de cache
const cached = cache.get(url);
if (cached && !isCacheExpired(cached)) {
return cached.data;
}
// Haal op van API
const response = await fetch(url);
const data = await response.json();
// Parse cacheduur uit headers
const cacheControl = response.headers
.get('cache-control');
const maxAge = parseMaxAge(cacheControl);
// Sla op in cache
cache.set(url, {
data,
expiry: Date.now() + (maxAge * 1000)
});
return data;
}

Service Worker Caching

Voor offline ondersteuning en geavanceerde cachingstrategieën, gebruik Service Workers:

Service Worker
// Cache API-responses met Service Worker
self.addEventListener('fetch', (event) => {
if (event.request.url.includes('api.smartmoneyapi.com')) {
// Eerst netwerk, val terug op cache
event.respondWith(
fetch(event.request)
.then(response => {
// Werk cache bij met nieuwe response
caches.open('api-cache')
.then(cache => cache.put(
event.request, response.clone()));
return response;
})
.catch(() =>
caches.match(event.request))
);
}
});

Cache Busting Strategies

Soms moet je clients dwingen om nieuwe data op te halen. Gebruik deze technieken:

Versieparameter

Voeg een versieparameter toe om caches ongeldig te maken wanneer data verandert:

Geverifieerde URL's
// Includeer data versie of timestamp
https://api.smartmoneyapi.com/v1/whales/btc?v=1709980800
// Wanneer data wordt bijgewerkt, verhoog de versie
https://api.smartmoneyapi.com/v1/whales/btc?v=1709981000
// Nieuwe URL = nieuwe cache entry

Forceer Hervalidatie

Overschrijf cache met Cache-Control: no-cache wanneer je nieuwe data nodig hebt:

Forceer Nieuwe Data
// JavaScript: Forceer nieuwe aanvraag
fetch(url, {
cache: 'no-cache', // Altijd hervalideren
headers: {
'Cache-Control': 'max-age=0'
}
});

Monitoring Cache Performance

Houd cache hit rates en prestatieverbeteringen bij om je cachingstrategie te valideren.

Cache Metrics om te Monitoren

  • Hit Rate — Percentage van aanvragen die vanuit cache worden bediend (doel: >70%)
  • Response Time — Gemiddelde latentie (gecachet: <50ms, niet-gecachet: 100-300ms)
  • Bandwidth Saved — Vermindering in dataoverdracht
  • Origin Load — Vermindering van aanvragen bij de originserver

Analyzing Cache Headers

Cache Analysis Script
// Analyseer response cache headers
async function analyzeCache(url) {
const response = await fetch(url);
return {
cacheControl: response.headers
.get('cache-control'),
etag: response.headers.get('etag'),
age: response.headers.get('age'),
cfStatus: response.headers
.get('cf-cache-status'),
contentLength:
response.headers.get('content-length')
};
}

Caching Best Practices

1. Respecteer Response Headers

Respecteer altijd Cache-Control headers van Smart Money API. Cache geen content gemarkeerd als no-store of no-cache.

2. Implementeer Voorwaardelijke Aanvragen

Stuur If-None-Match (ETag) en If-Modified-Since headers bij het hervalideren van gecachete content. Bespaar bandbreedte met 304 responses.

3. Cache Op Maat per Data Type

  • Real-time data (funding rates): 1-5 seconden cache maximum
  • Live signals (whale movement): 5-30 seconden cache
  • Uurlijkse data (OHLCV): 1 uur cache
  • Historische data: 24-uurs cache
  • Statische content: 7-daagse cache

4. Monitor Cache Effectiviteit

Houd hit rates en latentieverbeteringen bij. Pas TTL's aan op basis van data freshness vereisten en cache prestaties.

5. Gebruik Vary Headers met Mate

Vary headers verminderen cache hits door aparte cache entries te maken. Gebruik alleen wanneer nodig voor verschillende authenticatieniveaus of parameters.

6. Cache op Meerdere Lagen

Implementeer caching op CDN, browser en applicatieniveaus. Elke laag vangt aanvragen op voordat ze de origin bereiken.

Optimaliseer Je API Prestaties

Smart Money API's caching infrastructuur zorgt voor sub-100ms responses op wereldwijde schaal. Implementeer intelligente cachingstrategieën om prestaties te maximaliseren en kosten te minimaliseren.

Vergelijk Plannen
Alle plannen bevatten volledige CDN caching. Hogere tiers bieden cache control en purging APIs.

Gerelateerde Bronnen

Start gratis — 200 calls/dag, geen kaart

Krijg live whale flow, funding, open interest en on-chain data van 3 exchanges vanuit één API. Gratis tier, geen creditcard, upgrade op elk moment.

Start gratis →
Probeer de live API console → (geen account nodig)