API प्रदर्शन अनुकूलन और विलंबता कमी

Smart Money API के साथ 100ms से कम प्रतिक्रिया समय प्राप्त करें। अधिकतम थ्रूपुट के लिए कैशिंग, कनेक्शन पूलिंग, बैच संचालन और क्वेरी अनुकूलन में महारत हासिल करें।

21 मार्च, 2026 को प्रकाशित 17 मिनट पढ़ने का समय प्रदर्शन

प्रदर्शन अवलोकन

Smart Money API कम विलंबता और उच्च थ्रूपुट के लिए अनुकूलित है। अपने इंटीग्रेशन साइड पर अनुशंसित पैटर्न लागू करके अधिकतम प्रदर्शन प्राप्त करें।

प्रदर्शन अनुकूलन परतें:

  • कैशिंग — स्थानीय और CDN कैशिंग से मूल अनुरोध कम होते हैं
  • कनेक्शन पूलिंग — कनेक्शन पुन: उपयोग करें, ओवरहेड कम करें
  • बैच संचालन — कई अनुरोधों को एक में संयोजित करें
  • क्वेरी अनुकूलन — केवल आवश्यक डेटा अनुरोध करें
  • एसिंक/समानांतर — कई अनुरोधों को एक साथ संसाधित करें

प्रदर्शन लक्ष्य: P95 विलंबता <100ms, P99 <500ms, 99.9% अपटाइम <0.1% त्रुटि दर के साथ।

कैशिंग रणनीतियाँ

प्रतिक्रिया कैशिंग

स्थानीय कैश
// Cache-Control हेडर्स का सम्मान करें
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;
}

कैश अमान्यीकरण

  • व्हेल संचय डेटा: 5 मिनट TTL
  • फंडिंग दरें: 1 मिनट TTL
  • OHLCV डेटा: 1 घंटा TTL
  • ऐतिहासिक डेटा: 24 घंटे TTL
30 सेकंड में अपना API कुंजी प्राप्त करें

बनाने के लिए तैयार? एक मुफ्त API कुंजी लें (100 कॉल/दिन, कोई कार्ड नहीं) और लाइव व्हेल, फंडिंग और ऑन-चेन डेटा खींचना शुरू करें।

अपना API कुंजी प्राप्त करें →

कनेक्शन पूलिंग

HTTP कनेक्शन पुन: उपयोग

कनेक्शन पूल
// Node.js HTTP एजेंट पूलिंग के साथ
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
});
// अनुरोधों में एजेंट का उपयोग करें
fetch(url, { agent: httpsAgent });

कनेक्शन सेटिंग्स

पैरामीटर अनुशंसित तर्क
maxSockets 50-100 संसाधन उपयोग के साथ समवर्तीता संतुलित करें
maxFreeSockets 10-20 पुन: उपयोग के लिए निष्क्रिय कनेक्शन रखें
keepAliveTimeout 60000ms सर्वर टाइमआउट से मेल खाएं

बैच संचालन

अनुरोधों को संयोजित करना

बैच क्वेरी
// कई अनुरोधों के बजाय
// GET /whales?asset=BTC
// GET /whales?asset=ETH
// GET /whales?asset=SOL
// एक बैच अनुरोध का उपयोग करें
GET /v1/whales?asset=BTC,ETH,SOL
// ~200ms बचाया गया 3 अनुक्रमिक अनुरोधों की तुलना में

बैच सीमाएँ

  • प्रति अनुरोध अधिकतम प्रतीक: 100
  • अधिकतम समय सीमा: 365 दिन
  • अधिकतम परिणाम: 10,000 पंक्तियाँ

क्वेरी अनुकूलन

अनुरोध अनुकूलन

  • फ़ील्ड निर्दिष्ट करें — केवल आवश्यक फ़ील्ड अनुरोध करें
  • फ़िल्टर का उपयोग करें — फ़िल्टर के साथ प्रतिक्रिया आकार कम करें
  • पेजिनेशन — ऑफ़सेट पैरामीटर के बजाय लिमिट का उपयोग करें
  • समय सीमाएँ — केवल वह डेटा अनुरोध करें जिसकी आपको आवश्यकता है
अनुकूलित क्वेरी
// कम कुशल: बहुत सारा डेटा
GET /v1/whales?lookback=90d&limit=10000
// अधिक कुशल: विशिष्ट डेटा
GET /v1/whales?
asset=BTC&
metric=accumulation&
lookback=7d&
limit=100

प्रतिक्रिया संपीड़न

Gzip संपीड़न

अनुरोध संपीड़न
// अनुरोधों में संपीड़न सक्षम करें
fetch(url, {
headers: {
'Accept-Encoding': 'gzip, deflate'
}
});
// API स्वचालित रूप से संपीड़ित करता है यदि समर्थित है
// सामान्य संपीड़न: 70-80% आकार में कमी

संपीड़न बचत

डेटा प्रकार असंपीड़ित संपीड़ित बचत
JSON प्रतिक्रियाएं 500KB 85KB 83%
बड़ी टेबल्स 2MB 350KB 82%

एसिंक/पैरेलल पैटर्न

समवर्ती अनुरोध

समानांतर अनुरोध
// अप्रभावी: अनुक्रमिक
const btc = await fetch('/whales/BTC');
const eth = await fetch('/whales/ETH');
const sol = await fetch('/whales/SOL');
// कुल समय: ~300ms
// प्रभावी: समानांतर
const [btc, eth, sol] = await Promise.all([
fetch('/whales/BTC'),
fetch('/whales/ETH'),
fetch('/whales/SOL')
]);
// कुल समय: ~100ms (3x तेज!)

प्रदर्शन मेट्रिक्स

मुख्य मेट्रिक्स

मेट्रिक लक्ष्य मापन
P50 विलंबता <50ms मध्य प्रतिक्रिया समय
P95 विलंबता <100ms 95वां प्रतिशतक
P99 विलंबता <500ms 99वां प्रतिशतक
थ्रूपुट >1000 req/s प्रति सेकंड अनुरोध

प्रदर्शन की निगरानी

प्रदर्शन निगरानी
// प्रतिक्रिया समय ट्रैक करें
const start = performance.now();
const response = await fetch(url);
const duration = performance.now() - start;
// विश्लेषण के लिए लॉग करें
console.log(`Request took ${duration}ms`);

बेंचमार्किंग

लोड टेस्टिंग

अपने एकीकरण को बेंचमार्क करें और बॉटलनेक्स की पहचान करें:

  • टूल: Apache Bench, wrk, या Locust
  • यथार्थवादी समवर्ती स्तरों के साथ परीक्षण करें
  • विलंबता वितरण को मापें, केवल औसत नहीं
  • कैश वार्म और कोल्ड के साथ परीक्षण करें

अनुकूलन सिफारिशें

त्वरित जीत

  1. HTTP कनेक्शन पूलिंग सक्षम करें (1-5x सुधार)
  2. स्थानीय कैशिंग लागू करें (10-50x दोहराए गए अनुरोधों के लिए)
  3. बैच ऑपरेशन्स का उपयोग करें (2-5x अनुरोधों में कमी)
  4. gzip संपीड़न सक्षम करें (3-5x बैंडविड्थ कमी)

उन्नत अनुकूलन

  1. ऐतिहासिक डेटा के लिए CDN कैशिंग लागू करें
  2. स्थानीय कैशिंग के लिए डेटाबेस कनेक्शन पूल्स का उपयोग करें
  3. सर्किट ब्रेकर पैटर्न लागू करें
  4. बड़े डेटासेट के लिए स्ट्रीमिंग प्रतिक्रियाओं का उपयोग करें

अधिकतम प्रदर्शन प्राप्त करें

Smart Money API गति के लिए बनाया गया है। इन अनुकूलन रणनीतियों को लागू करें और 100ms से कम विलंबता और अधिकतम थ्रूपुट प्राप्त करें।

प्रदर्शन स्तर देखें
प्रो और एंटरप्राइज प्लान्स में उन्नत कैशिंग और प्रदर्शन सुविधाएं शामिल हैं।

संबंधित संसाधन

मुफ्त शुरू करें — 100 कॉल/दिन, कोई कार्ड नहीं

एक API से 3 एक्सचेंजों में लाइव व्हेल फ्लो, फंडिंग, ओपन इंटरेस्ट और ऑन-चेन डेटा प्राप्त करें। मुफ्त टियर, कोई क्रेडिट कार्ड नहीं, कभी भी अपग्रेड करें।

मुफ्त शुरू करें →
लाइव API कंसोल आज़माएं → (कोई खाता आवश्यक नहीं)