Pag-optimize ng Performance ng API at Pagbawas ng Latency

Makamit ang mga response time na mas mababa sa 100ms gamit ang Smart Money API. Masterin ang caching, pag-pool ng koneksyon, batch na operasyon, at pag-optimize ng query para sa maximum na throughput.

Na-publish noong Marso 21, 2026 17 minutong pagbasa Performance

Pangkalahatang-ideya ng Performance

Ang Smart Money API ay na-optimize para sa mababang latency at mataas na throughput. Makamit ang maximum na performance sa pamamagitan ng pagpapatupad ng mga inirerekomendang pattern sa iyong integration side.

Mga layer ng pag-optimize ng performance:

  • Pag-cache — Ang lokal at CDN caching ay nagbabawas sa mga origin request
  • Pag-pool ng Koneksyon — I-reuse ang mga koneksyon, bawasan ang overhead
  • Mga Batch na Operasyon — Pagsamahin ang maraming request sa isa
  • Pag-optimize ng Query — Humingi lamang ng kinakailangang data
  • Async/Parallel — Prosesuhin ang maraming request nang sabay-sabay

Target na Performance: P95 latency <100ms, P99 <500ms, 99.9% uptime na may <0.1% error rate.

Mga Diskarte sa Pag-cache

Pag-cache ng Response

Lokal na Cache
// Igalang ang mga Cache-Control header
const cache = new Map();
async function cachedFetch(url) {
const cached = cache.get(url);
if (cached && !cached.isExpired) {
return cached.data;
}
const response = await fetch(url);
const ttl = parseCacheControl(response.headers);
cache.set(url, { data: response, expiry: ttl });
return response;
}

Pag-invalidate ng Cache

  • Data ng akumulasyon ng whale: 5 minutong TTL
  • Mga funding rate: 1 minutong TTL
  • Data ng OHLCV: 1 oras na TTL
  • Makasaysayang data: 24 oras na TTL
Kunin ang iyong API key sa loob ng 30 segundo

Handa nang magtayo? Kumuha ng libreng API key (100 tawag/araw, walang card) at simulang kunin ang live na whale, funding, at on-chain data.

Kunin ang iyong API key →

Pag-pool ng Koneksyon

Pag-reuse ng HTTP Connection

Pool ng Koneksyon
// Node.js HTTP Agent na may pooling
const http = require('http');
const https = require('https');
const httpAgent = new http.Agent({
keepAlive: true,
maxSockets: 50,
maxFreeSockets: 10
});
const httpsAgent = new https.Agent({
keepAlive: true,
maxSockets: 50,
maxFreeSockets: 10
});
// Gamitin ang mga agent sa mga request
fetch(url, { agent: httpsAgent });

Mga Setting ng Koneksyon

Parameter Inirerekomenda Rationale
maxSockets 50-100 Balansehin ang concurrency sa paggamit ng resource
maxFreeSockets 10-20 Panatilihin ang idle na koneksyon para sa reuse
keepAliveTimeout 60000ms Itugma sa timeout ng server

Mga Batch na Operasyon

Pagsasama-sama ng Mga Request

Batch Query
// Sa halip na maraming request
// GET /whales?asset=BTC
// GET /whales?asset=ETH
// GET /whales?asset=SOL
// Gumamit ng isang batch request
GET /v1/whales?asset=BTC,ETH,SOL
// ~200ms na na-save kumpara sa 3 sequential requests

Mga Limitasyon sa Batch

  • Max na simbolo bawat request: 100
  • Max na time range: 365 araw
  • Max na resulta: 10,000 row

Pag-optimize ng Query

Pag-optimize ng Request

  • Tukuyin ang mga field — Humingi lamang ng mga kinakailangang field
  • Gumamit ng mga filter — Bawasan ang laki ng response gamit ang mga filter
  • Pagination — Gamitin ang limit parameter, hindi offset
  • Mga Timeframe — Humingi lamang ng data na kailangan mo
Na-optimize na Query
// Mas hindi efficient: Maraming data
GET /v1/whales?lookback=90d&limit=10000
// Mas efficient: Tiyak na data
GET /v1/whales?
asset=BTC&
metric=accumulation&
lookback=7d&
limit=100

Compression ng Response

Gzip Compression

Compression ng Request
// Paganahin ang compression sa mga request
fetch(url, {
headers: {
'Accept-Encoding': 'gzip, deflate'
}
});
// Ang API ay awtomatikong nagko-compress kung supported
// Karaniwang compression: 70-80% pagbawas sa laki

Pagtipid sa Compression

Uri ng Data Hindi Naka-compress Naka-compress Pagtipid
Mga JSON response 500KB 85KB 83%
Malalaking talahanayan 2MB 350KB 82%

Mga Async/Parallel Pattern

Mga Concurrent Request

Mga Parallel Request
// Hindi epektibo: Sunud-sunod
const btc = await fetch('/whales/BTC');
const eth = await fetch('/whales/ETH');
const sol = await fetch('/whales/SOL');
// Kabuuang oras: ~300ms
// Epektibo: Parallel
const [btc, eth, sol] = await Promise.all([
fetch('/whales/BTC'),
fetch('/whales/ETH'),
fetch('/whales/SOL')
]);
// Kabuuang oras: ~100ms (3x mas mabilis!)

Mga Metric ng Performance

Mga Pangunahing Metric

Metric Target Pagsukat
P50 Latency <50ms Median na oras ng response
P95 Latency <100ms 95th percentile
P99 Latency <500ms 99th percentile
Throughput >1000 req/s Mga request bawat segundo

Pagmo-monitor ng Performance

Performance Monitoring
// Subaybayan ang oras ng response
const start = performance.now();
const response = await fetch(url);
const duration = performance.now() - start;
// I-log para sa analysis
console.log(`Ang request ay tumagal ng ${duration}ms`);

Benchmarking

Load Testing

I-benchmark ang iyong integration para matukoy ang mga bottleneck:

  • Tool: Apache Bench, wrk, o Locust
  • Test sa realistic na antas ng concurrency
  • Sukatin ang distribusyon ng latency, hindi lang ang average
  • Test sa mainit at malamig na cache

Mga Rekomendasyon sa Pag-optimize

Quick Wins

  1. Paganahin ang HTTP connection pooling (1-5x pagpapabuti)
  2. Magpatupad ng local caching (10-50x para sa paulit-ulit na mga request)
  3. Gumamit ng batch operations (2-5x pagbawas sa mga request)
  4. Paganahin ang gzip compression (3-5x pagbawas sa bandwidth)

Mga Advanced na Pag-optimize

  1. Magpatupad ng CDN caching para sa historical data
  2. Gumamit ng database connection pools para sa local caching
  3. Magpatupad ng circuit breaker pattern
  4. Gumamit ng streaming responses para sa malalaking dataset

Makamit ang Pinakamataas na Performance

Ang Smart Money API ay binuo para sa bilis. Ipatupad ang mga estratehiyang ito sa pag-optimize para sa sub-100ms latency at maximum na throughput.

Tingnan ang Mga Tier ng Performance
Ang Pro at Enterprise plan ay may kasamang advanced na caching at mga feature ng performance.

Mga Kaugnay na Resource

Magsimula nang libre — 200 calls/day, walang card

Kumuha ng live na whale flow, funding, open interest, at on-chain data sa 3 exchanges mula sa iisang API. Libreng tier, walang credit card, i-upgrade anumang oras.

Magsimula nang libre →
Subukan ang live API console → (walang account na kailangan)