رسپانس کیشنگ اور CDN انٹیگریشن گائیڈ

Smart Money API کی کارکردگی کو بہتر بنائیں ذہین کیشنگ کی حکمت عملیوں کے ساتھ۔ HTTP کیش ہیڈرز، ETag کی توثیق، CDN انٹیگریشن، اور کلائنٹ سائیڈ کیشنگ کے نمونوں کو سیکھیں تاکہ تاخیر اور بینڈوتھ کی لاگت کو کم کیا جا سکے۔

21 مارچ 2026 کو شائع ہوا 16 منٹ کا پڑھنا کارکردگی

کیشنگ کا جائزہ

Smart Money API کے اختتامی پوائنٹس کرپٹو کرنسی کے مارکیٹ ڈیٹا فراہم کرتے ہیں جو مختلف فریکوئنسیز پر تبدیل ہوتا ہے۔ کچھ ڈیٹا (وہیل ایڈریسز، فنڈنگ ریٹس) ہر چند سیکنڈز میں اپڈیٹ ہوتا ہے، جبکہ دوسرا ڈیٹا (تاریخی تجزیہ، تعلیمی مواد) گھنٹوں تک مستقل رہتا ہے۔ ذہین کیشنگ کارکردگی کو نمایاں طور پر بہتر بناتی ہے اور لاگت کو کم کرتی ہے۔

Smart Money API تین سطحی کیشنگ کی حکمت عملی نافذ کرتا ہے:

  • CDN ایج کیش — خودکار کیش انویلیڈیشن کے ساتھ عالمی مواد کی ترسیل
  • HTTP براؤزر کیش — معیاری HTTP ہیڈرز کا استعمال کرتے ہوئے کلائنٹ سائیڈ کیشنگ
  • ایپلیکیشن کیش — اکثر رسائی حاصل کیے جانے والے ڈیٹاسیٹس کے لیے میموری میں کیشنگ

کارکردگی کی بصیرت: کیشڈ رسپانس تازہ API درخواستوں کے مقابلے میں 50-100 گنا تیز ہوتی ہیں اور بینڈوتھ کو نمایاں طور پر بچاتی ہیں۔ مناسب طریقے سے کیشڈ انٹیگریشن ڈیٹا ٹرانسفر کو 70-85% تک کم کر سکتی ہے۔

ہر Smart Money API رسپانس میں کیش ہدایات شامل ہوتی ہیں جو کلائنٹس اور CDNs کو بتاتی ہیں کہ ڈیٹا کب تک درست رہتا ہے۔ ان ہدایات کو سمجھنا اور انہیں صحیح طریقے سے نافذ کرنا بہترین کارکردگی کے لیے ضروری ہے۔

کیشنگ کی بنیادی باتیں

HTTP کیشنگ رسپانس ہیڈرز پر مبنی کام کرتی ہے جو بتاتی ہیں کہ مواد کو کیش کیا جا سکتا ہے اور کتنی دیر تک۔

کیش کنٹرول ہیڈر

کیش رویے کو کنٹرول کرنے کا بنیادی طریقہ کار۔ ہر Smart Money API رسپانس میں ایک کیش کنٹرول ہیڈر شامل ہوتا ہے جو درج ذیل کی وضاحت کرتا ہے:

  • max-age — سیکنڈز میں مدت جس تک رسپانس درست رہتی ہے
  • public/private — کیا درمیانی کیش اسے ذخیرہ کر سکتی ہیں
  • must-revalidate — کیا خدمت کرنے سے پہلے تازگی کی جانچ کرنی ہے
  • no-store — حساس ڈیٹا کو کیش نہ کریں

مثال کے طور پر کیش ہیڈرز

مختلف اختتامی پوائنٹس کی مختلف کیش کی ضروریات ہوتی ہیں:

رسپانس ہیڈرز
// وہیل ایڈریس ڈیٹا (ہر 5 منٹ میں اپڈیٹ ہوتا ہے)
Cache-Control: public, max-age=300
ETag: "abc123def456"
// ریئل ٹائم فنڈنگ ریٹس (ہر سیکنڈ میں اپڈیٹ ہوتا ہے)
Cache-Control: public, max-age=1
ETag: "xyz789abc123"
// تاریخی ڈیٹا (تبدیل نہیں ہوتا)
Cache-Control: public, max-age=86400, immutable
ETag: "static-content-v1"

اختتامی پوائنٹ کی قسم کے لحاظ سے کیش مدت

ڈیٹا کی قسم کیش مدت استعمال کا معاملہ
ریئل ٹائم فنڈنگ 1-5 سیکنڈز لائیو ٹریڈنگ، پوزیشن سائزنگ
وہیل کی حرکتیں 5 منٹ سگنل کی تصدیق، انتباہات
روزانہ OHLCV 1 گھنٹہ تکنیکی تجزیہ، چارٹس
تاریخی تجزیہ 24 گھنٹے بیک ٹیسٹنگ، تحقیق
مستقل مواد 7 دن API دستاویزات، گائیڈز، ترتیب
اپنا API کلید 30 سیکنڈز میں حاصل کریں

تعمیر کے لیے تیار ہیں؟ ایک مفت API کلید حاصل کریں (100 کالز/دن، کوئی کارڈ نہیں) اور لائیو وہیل، فنڈنگ اور آن چین ڈیٹا کو کھینچنا شروع کریں۔

اپنا API کلید حاصل کریں →

HTTP کیش ہیڈرز

Smart Money API رسپانسز میں کئی کیش سے متعلق ہیڈرز شامل ہوتے ہیں جو کارکردگی کو زیادہ سے زیادہ کرنے کے ساتھ ساتھ ڈیٹا کی تازگی کو برقرار رکھنے کے لیے مل کر کام کرتے ہیں۔

کیش کنٹرول: بنیادی ہیڈر

براؤزرز اور درمیانی کیشز کے لیے کیشنگ کے رویے کو کنٹرول کرتا ہے:

کیش کنٹرول ہدایات
// عوامی ڈیٹا، 5 منٹ کے لیے کیش کریں
Cache-Control: public, max-age=300
// پرائیویٹ ڈیٹا، صرف براؤزر میں کیش کریں
Cache-Control: private, max-age=3600
// مستقل مواد، ہمیشہ کے لیے کیش کریں
Cache-Control: public, max-age=31536000, immutable
// خدمت کرنے سے پہلے ہمیشہ دوبارہ توثیق کریں
Cache-Control: public, max-age=0, must-revalidate
// حساس ڈیٹا کو کیش نہ کریں
Cache-Control: private, no-store, no-cache

ایکسپائرز ہیڈر (پرانا)

پرانے کلائنٹس کے لیے، Smart Money ایکسپائرز ہیڈر بھی فراہم کرتا ہے (HTTP/1.0):

ایکسپائرز ہیڈر
// مطلق ختم ہونے کا وقت
Expires: Wed, 22 Mar 2026 14:30:00 GMT
// HTTP/1.1 میں کیش کنٹرول max-age کو ترجیح دی جاتی ہے

آخری ترمیم شدہ ہیڈر

بتاتا ہے کہ مواد کو آخری بار کب اپڈیٹ کیا گیا تھا، مشروط درخواستوں کو قابل بناتا ہے:

آخری ترمیم شدہ کا استعمال
// رسپانس میں آخری ترمیم شدہ شامل ہوتا ہے
Last-Modified: Wed, 21 Mar 2026 10:15:30 GMT
// کلائنٹ If-Modified-Since کے ساتھ دوبارہ توثیق کرتا ہے
If-Modified-Since: Wed, 21 Mar 2026 10:15:30 GMT
// اگر تبدیل نہیں ہوا ہے، سرور 304 Not Modified کا جواب دیتا ہے
HTTP/1.1 304 Not Modified

ویری ہیڈر

کیشز کو بتاتا ہے کہ کون سی درخواست ہیڈرز رسپانس کو متاثر کرتی ہیں (تصدیق، پیرامیٹرز):

ویری ہیڈر
// رسپانس تصدیق اور علامات سے مختلف ہوتا ہے
Vary: Authorization, X-Symbols
// کیشز مختلف اقدار کے لیے الگ الگ ورژن ذخیرہ کرتی ہیں

ETag اور مشروط درخواستیں

ETags (انٹیٹی ٹیگز) کیشڈ مواد کو مکمل رسپانس باڈی کو ڈاؤن لوڈ کیے بغیر توثیق کرنے کا ایک موثر طریقہ فراہم کرتی ہیں۔

ETags کیسے کام کرتی ہیں

  1. ابتدائی درخواست — کلائنٹ ڈیٹا کی درخواست کرتا ہے، سرور ETag کے ساتھ جواب دیتا ہے
  2. کیش اسٹوریج — کلائنٹ ETag کے ساتھ رسپانس کو کیش کرتا ہے
  3. بعد کی درخواست — کلائنٹ If-None-Match ہیڈر کے ساتھ کیشڈ ETag بھیجتا ہے
  4. تصدیق — اگر ڈیٹا تبدیل نہیں ہوا ہے، سرور 304 Not Modified واپس کرتا ہے
  5. بینڈوڈتھ محفوظ — کوئی رسپانس باڈی نہیں بھیجی گئی، بڑی بینڈوڈتھ کی بچت

ETag نفاذ

ابتدائی درخواست اور جواب
// پہلی درخواست
GET /v1/whales/btc HTTP/1.1
// جواب میں ETag شامل ہے
HTTP/1.1 200 OK
ETag: "8a3b9c2d"
Cache-Control: public, max-age=300
Content-Type: application/json
{...response body...}
مشروط تصدیق
// کیش کی میعاد ختم ہونے کے بعد، If-None-Match بھیجیں
GET /v1/whales/btc HTTP/1.1
If-None-Match: "8a3b9c2d"
// اگر تبدیل نہیں ہوا ہے، سرور 304 کا جواب دیتا ہے
HTTP/1.1 304 Not Modified
ETag: "8a3b9c2d"
Cache-Control: public, max-age=300
// کوئی باڈی نہیں بھیجی گئی! بینڈوڈتھ محفوظ

ETag کی طاقت

ETags مضبوط یا کمزور ہو سکتے ہیں:

قسم فارمیٹ استعمال کا کیس
مضبوط ETag "8a3b9c2d" بائٹ-فار-بائٹ مماثل، تصدیق کے لیے استعمال کریں
کمزور ETag W/"8a3b9c2d" معنوی طور پر برابر، ڈسپلے میں تبدیلیوں کے لیے

کیش کنٹرول ہدایات

کیش کنٹرول ہدایات کو سمجھنا آپ کی ایپلیکیشن کے لیے بہترین کیشنگ اسٹریٹیجیز بنانے میں مدد دیتا ہے۔

ہدایت کا حوالہ

ہدایت معنی مثال
max-age سیکنڈز میں جواب تازہ رہتا ہے max-age=300
public کیش محفوظ اور شیئر کر سکتا ہے public
private صرف وصول کنندہ کے لیے کیش private
must-revalidate پرانی ہونے پر دوبارہ تصدیق کریں must-revalidate
no-cache استعمال سے پہلے دوبارہ تصدیق کریں no-cache
no-store بالکل کیش نہ کریں no-store
immutable کبھی تبدیل نہیں ہوتا، ہمیشہ کے لیے کیش کریں immutable
s-maxage CDN کیش کی مدت s-maxage=3600

عملی کیش کنٹرول پیٹرنز

عام پیٹرنز
// پیٹرن 1: براؤزر کیش، CDN کے لیے 1 گھنٹہ
Cache-Control: public, max-age=300, s-maxage=3600
// پیٹرن 2: فی صارف ڈیٹا، کوئی پراکسی کیش نہیں
Cache-Control: private, max-age=1800
// پیٹرن 3: ہمیشہ تازہ، ہمیشہ چیک کریں
Cache-Control: public, no-cache, must-revalidate
// پیٹرن 4: غیر متغیر ورژنڈ اثاثہ
Cache-Control: public, max-age=31536000, immutable

CDN انٹیگریشن

Smart Money API کلاؤڈ فلئیر کے عالمی CDN نیٹ ورک کے ذریعے جوابات فراہم کرتا ہے، خودکار طور پر جوابات کو دنیا بھر کے ایج لوکیشنز پر کیش کرتا ہے تاکہ کم سے کم تاخیر ہو۔

Smart Money CDN کیسے کام کرتا ہے

  1. صارف کی درخواست — درخواست قریبی کلاؤڈ فلئیر ایج لوکیشن پر پہنچتی ہے
  2. کیش چیک — ایج چیک کرتا ہے کہ کیا جواب کیشڈ اور تازہ ہے
  3. کیش ہٹ — اگر کیشڈ ہے، فوری طور پر <10ms تاخیر کے ساتھ پیش کریں
  4. کیش مس — اگر کیشڈ نہیں ہے، اصل سرور سے حاصل کریں
  5. محفوظ اور پیش کریں — جواب کو کیش کریں اور صارف کو فراہم کریں

کیش کلید کنفیگریشن

کلاؤڈ فلئیر کیش کلیدز کو منفرد طور پر شناخت کرنے کے لیے استعمال کرتا ہے۔ ڈیفالٹ کے طور پر:

  • درخواست کا راستہ اور کوئری پیرامیٹرز شامل ہیں
  • زیادہ تر ہیڈرز کو نظر انداز کیا جاتا ہے (کیش ہٹس کو زیادہ سے زیادہ کرنے کے لیے)
  • تصدیق کے ہیڈرز شامل نہیں ہیں (اکاؤنٹ لیکج نہیں)
  • کسٹم ہیڈرز کو Vary ہیڈر کے ذریعے شامل کیا جا سکتا ہے

CDN پرجنگ

Smart Money خودکار طور پر CDN کیش کو صاف کرتا ہے جب ڈیٹا اپڈیٹ ہوتا ہے:

دستی کیش پرج
// CDN سے مخصوص URL کو صاف کریں
curl -X POST "https://api.smartmoneyapi.com/v1/cache/purge" \
-H "Authorization: Bearer token" \
-d '{
"urls": [
"https://api.smartmoneyapi.com/v1/whales/btc"
]
}'

CDN کارکردگی کی پیمائش

چیک کریں کہ کیا درخواست کیش سے پیش کی گئی ہے:

جواب کے ہیڈرز
// CDN ایج سے کیش ہٹ
CF-Cache-Status: HIT
CF-RAY: 8a9b7c6d5e4f3g2h
Age: 45 // کیش ہونے کے بعد سیکنڈز
// کیش مس، اصل سرور سے حاصل کیا گیا
CF-Cache-Status: MISS
Age: 0

کلائنٹ سائیڈ کیشنگ

اپنی ایپلیکیشن میں کیشنگ کو نافذ کریں تاکہ API کالز کو مزید کم کیا جا سکے اور جواب دہی کو بہتر بنایا جا سکے۔

براؤزر کیش نفاذ

جاوا اسکرپٹ کیشنگ
// کیش اسٹوریج بنائیں
const cache = new Map();
async function fetchWithCache(url) {
// پہلے کیشے چیک کریں
const cached = cache.get(url);
if (cached && !isCacheExpired(cached)) {
return cached.data;
}
// API سے ڈیٹا حاصل کریں
const response = await fetch(url);
const data = await response.json();
// ہیڈرز سے کیشے کی مدت نکالیں
const cacheControl = response.headers
.get('cache-control');
const maxAge = parseMaxAge(cacheControl);
// کیشے میں محفوظ کریں
cache.set(url, {
data,
expiry: Date.now() + (maxAge * 1000)
});
return data;
}

سروس ورکر کیشنگ

آف لائن سپورٹ اور جدید کیشنگ حکمت عملیوں کے لیے سروس ورکرز استعمال کریں:

سروس ورکر
// سروس ورکر کے ساتھ API ردعمل کو کیش کریں
self.addEventListener('fetch', (event) => {
if (event.request.url.includes('api.smartmoneyapi.com')) {
// پہلے نیٹ ورک، پھر کیشے کا استعمال
event.respondWith(
fetch(event.request)
.then(response => {
// تازہ جواب کے ساتھ کیشے کو اپ ڈیٹ کریں
caches.open('api-cache')
.then(cache => cache.put(
event.request, response.clone()));
return response;
})
.catch(() =>
caches.match(event.request))
);
}
});

کیشے کو توڑنے کی حکمت عملیاں

کبھی کبھی آپ کو کلائنٹس کو تازہ ڈیٹا حاصل کرنے پر مجبور کرنے کی ضرورت ہوتی ہے۔ ان تکنیکوں کا استعمال کریں:

ورژن پیرامیٹر

ڈیٹا تبدیل ہونے پر کیشے کو ناکارہ بنانے کے لیے ایک ورژن پیرامیٹر شامل کریں:

ورژنڈ یو آر ایلز
// ڈیٹا ورژن یا ٹائم اسٹیمپ شامل کریں
https://api.smartmoneyapi.com/v1/whales/btc?v=1709980800
// جب ڈیٹا اپ ڈیٹ ہو، ورژن بڑھائیں
https://api.smartmoneyapi.com/v1/whales/btc?v=1709981000
// نیا یو آر ایل = نیا کیشے انٹری

زبردستی دوبارہ توثیق

جب آپ کو تازہ ڈیٹا کی ضرورت ہو تو Cache-Control: no-cache کے ساتھ کیشے کو اوور رائیڈ کریں:

زبردستی تازہ ڈیٹا
// جاوا اسکرپٹ: زبردستی تازہ درخواست
fetch(url, {
cache: 'no-cache', // ہمیشہ دوبارہ توثیق کریں
headers: {
'Cache-Control': 'max-age=0'
}
});

کیشے کی کارکردگی کی نگرانی

اپنی کیشنگ حکمت عملی کی توثیق کے لیے کیشے ہٹ ریٹ اور کارکردگی میں بہتری کو ٹریک کریں۔

نگرانی کے لیے کیشے میٹرکس

  • ہٹ ریٹ — کیشے سے خدمت کی گئی درخواستوں کا فیصد (ہدف: >70%)
  • ردعمل کا وقت — اوسط لیٹنسی (کیشڈ: <50ms, غیر کیشڈ: 100-300ms)
  • بینڈوڈتھ کی بچت — ڈیٹا ٹرانسفر میں کمی
  • اصل لوڈ — اصل سرور پر درخواستوں میں کمی

کیشے ہیڈرز کا تجزیہ

کیشے تجزیہ اسکرپٹ
// ردعمل کے کیشے ہیڈرز کا تجزیہ کریں
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')
};
}

کیشنگ کے بہترین طریقے

1. ردعمل کے ہیڈرز کا احترام کریں

ہمیشہ Smart Money API سے Cache-Control ہیڈرز کا احترام کریں۔ no-store یا no-cache سے نشان زد مواد کو کیشے نہ کریں۔

2. مشروط درخواستیں لاگو کریں

کیشڈ مواد کو دوبارہ توثیق کرتے وقت If-None-Match (ETag) اور If-Modified-Since ہیڈرز بھیجیں۔ 304 ردعمل کے ساتھ بینڈوڈتھ بچائیں۔

3. ڈیٹا کی قسم کے مطابق مناسب طریقے سے کیشے کریں

  • ریل ٹائم ڈیٹا (فنڈنگ ریٹس): زیادہ سے زیادہ 1-5 سیکنڈ کیشے
  • لائیو سگنلز (وہیل کی نقل و حرکت): 5-30 سیکنڈ کیشے
  • گھنٹہ وار ڈیٹا (OHLCV): 1 گھنٹہ کیشے
  • تاریخی ڈیٹا: 24 گھنٹہ کیشے
  • ساکن مواد: 7 دن کیشے

4. کیشے کی تاثیر کی نگرانی کریں

ہٹ ریٹ اور لیٹنسی میں بہتری کو ٹریک کریں۔ ڈیٹا کی تازگی کی ضروریات اور کیشے کی کارکردگی کی بنیاد پر TTLs کو ایڈجسٹ کریں۔

5. Vary ہیڈرز کا احتیاط سے استعمال کریں

Vary ہیڈرز الگ کیشے انٹریز بنا کر کیشے ہٹ کو کم کرتے ہیں۔ صرف ضرورت پڑنے پر استعمال کریں جب مختلف توثیق کی سطحیں یا پیرامیٹرز ہوں۔

6. متعدد سطحوں پر کیشے کریں

CDN، براؤزر، اور ایپلیکیشن کی سطحوں پر کیشنگ لاگو کریں۔ ہر لیئر اصل سرور تک پہنچنے سے پہلے درخواستوں کو پکڑتی ہے۔

اپنی API کی کارکردگی کو بہتر بنائیں

Smart Money API کی کیشنگ انفراسٹرکچر عالمی سطح پر 100ms سے کم ردعمل کو یقینی بناتی ہے۔ کارکردگی کو زیادہ سے زیادہ اور لاگت کو کم سے کم کرنے کے لیے ذہین کیشنگ حکمت عملیاں لاگو کریں۔

پلانز کا موازنہ کریں
تمام پلانز میں مکمل CDN کیشنگ شامل ہے۔ اعلیٰ درجے کے ٹیئرز کیشے کنٹرول اور پرجنگ APIs فراہم کرتے ہیں۔

متعلقہ وسائل

مفت شروع کریں — 100 کالز/دن، کوئی کارڈ نہیں

ایک API سے 3 ایکسچینجز پر لائیو وہیل فلو، فنڈنگ، اوپن انٹرسٹ اور آن چین ڈیٹا حاصل کریں۔ مفت ٹیئر، کوئی کریڈٹ کارڈ نہیں، کسی بھی وقت اپ گریڈ کریں۔

مفت شروع کریں →
لائیو API کنسول آزمائیں → (اکاؤنٹ کی ضرورت نہیں)