Τεκμηρίωση API
Οδηγός Κρυπτογράφησης Απαντήσεων και Ενσωμάτωσης CDN
Βελτιστοποιήστε την απόδοση του Smart Money API με έξυπνες στρατηγικές κρυπτογράφησης. Μάθετε για τις κεφαλίδες κρυπτογράφησης HTTP, την επικύρωση ETag, την ενσωμάτωση CDN και τα μοτίβα κρυπτογράφησης από την πλευρά του πελάτη για να μειώσετε την καθυστέρηση και το κόστος εύρους ζώνης.
Δημοσιεύθηκε στις 21 Μαρτίου 2026
•
16 λεπτά ανάγνωσης
•
Απόδοση
Επισκόπηση Κρυπτογράφησης
Τα τελικά σημεία του Smart Money API παρέχουν δεδομένα αγοράς κρυπτονομισμάτων που αλλάζουν με διαφορετικές συχνότητες. Ορισμένα δεδομένα (διευθύνσεις φαλαινοπώλησης, ποσοστά χρηματοδότησης) ενημερώνονται κάθε λίγα δευτερόλεπτα, ενώ άλλα δεδομένα (ιστορική ανάλυση, εκπαιδευτικό περιεχόμενο) παραμένουν στατικά για ώρες. Η έξυπνη κρυπτογράφηση βελτιώνει σημαντικά την απόδοση και μειώνει το κόστος.
Το Smart Money API εφαρμόζει μια στρατηγική κρυπτογράφησης τριών επιπέδων:
- Κρυπτογράφηση CDN Edge — Παγκόσμια παράδοση περιεχομένου με αυτόματη ακύρωση κρυπτογράφησης
- Κρυπτογράφηση Περιηγητή HTTP — Κρυπτογράφηση από την πλευρά του πελάτη χρησιμοποιώντας τυπικές κεφαλίδες HTTP
- Κρυπτογράφηση Εφαρμογής — Κρυπτογράφηση στη μνήμη για συχνά προσπελασσόμενα σύνολα δεδομένων
Στατιστική Απόδοσης: Οι κρυπτογραφημένες απαντήσεις εξυπηρετούνται 50-100 φορές γρηγορότερα από τις νέες αιτήσεις API και εξοικονομούν σημαντικά εύρος ζώνης. Μια σωστά κρυπτογραφημένη ενσωμάτωση μπορεί να μειώσει τη μεταφορά δεδομένων κατά 70-85%.
Κάθε απάντηση του Smart Money API περιλαμβάνει οδηγίες κρυπτογράφησης που λένε στους πελάτες και τα CDN πόσο καιρό τα δεδομένα παραμένουν έγκυρα. Η κατανόηση αυτών των οδηγιών και η σωστή εφαρμογή τους είναι κρίσιμη για βέλτιστη απόδοση.
Βασικές Αρχές Κρυπτογράφησης
Η κρυπτογράφηση HTTP λειτουργεί με βάση τις κεφαλίδες απάντησης που υποδεικνύουν εάν το περιεχόμενο μπορεί να κρυπτογραφηθεί και για πόσο χρόνο.
Κεφαλίδα Cache-Control
Ο κύριος μηχανισμός για τον έλεγχο της συμπεριφοράς κρυπτογράφησης. Κάθε απάντηση του Smart Money API περιλαμβάνει μια κεφαλίδα Cache-Control που καθορίζει:
- 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 →
ETag και Υπό Όρους Αιτήσεις
Τα ETags (Ετικέτες Οντοτήτων) παρέχουν έναν αποτελεσματικό τρόπο για την επικύρωση κρυπτογραφημένου περιεχομένου χωρίς να κατεβάζετε το πλήρες σώμα απάντησης.
Πώς Λειτουργούν τα ETags
- Αρχική Αίτηση — Ο πελάτης ζητά δεδομένα, ο διακομιστής απαντά με ETag
- Αποθήκευση Κρυπτογράφησης — Ο πελάτης κρυπτογραφεί την απάντηση με ETag
- Επακόλουθη Αίτηση — Ο πελάτης στέλνει την κεφαλίδα If-None-Match με την αποθηκευμένη ETag
- Επικύρωση — Εάν τα δεδομένα δεν έχουν αλλάξει, ο διακομιστής επιστρέφει 304 Not Modified
- Εξοικονόμηση Εύρους Ζώνης — Δεν αποστέλλεται σώμα απάντησης, μεγάλη εξοικονόμηση εύρους ζώνης
Υλοποίηση 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" |
Ακριβώς ίδιο byte-προς-byte, χρησιμοποιείται για επικύρωση |
| Αδύναμο ETag |
W/"8a3b9c2d" |
Σημασιολογικά ισοδύναμο, για αλλαγές εμφάνισης |
Οδηγίες Ελέγχου Προσωρινής Μνήμης
Η κατανόηση των οδηγιών Cache-Control επιτρέπει τη δημιουργία βέλτιστων στρατηγικών προσωρινής αποθήκευσης για την εφαρμογή σας.
Αναφορά Οδηγιών
| Οδηγία |
Σημασία |
Παράδειγμα |
| 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 |
Πρακτικά Μοτίβα Cache-Control
// Μοτίβο 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 της Cloudflare, αποθηκεύοντας αυτόματα τις απαντήσεις σε τοποθεσίες άκρων παγκοσμίως για ελάχιστη καθυστέρηση.
Πώς Λειτουργεί το Smart Money CDN
- Αίτηση Χρήστη — Η αίτηση φτάνει στην πλησιέστερη τοποθεσία άκρων της Cloudflare
- Έλεγχος Προσωρινής Μνήμης — Το άκρο ελέγχει εάν η απάντηση είναι αποθηκευμένη και φρέσκια
- Επιτυχία Προσωρινής Μνήμης — Εάν είναι αποθηκευμένη, εξυπηρετείται αμέσως με καθυστέρηση <10ms
- Αποτυχία Προσωρινής Μνήμης — Εάν δεν είναι αποθηκευμένη, ανακτάται από τον αρχικό διακομιστή
- Αποθήκευση και Παράδοση — Αποθηκεύει την απάντηση και την παραδίδει στον χρήστη
Διαμόρφωση Κλειδιού Προσωρινής Μνήμης
Η Cloudflare χρησιμοποιεί κλειδιά προσωρινής μνήμης για να αναγνωρίζει μοναδικά τις αποθηκευμένες απαντήσεις. Από προεπιλογή:
- Η διαδρομή αιτήματος και οι παράμετροι ερωτήματος περιλαμβάνονται
- Οι περισσότερες κεφαλίδες αγνοούνται (για μεγιστοποίηση των επιτυχιών προσωρινής μνήμης)
- Οι κεφαλίδες εξουσιοδότησης ΔΕΝ περιλαμβάνονται (χωρίς διαρροή λογαριασμού)
- Οι προσαρμοσμένες κεφαλίδες μπορούν να συμπεριληφθούν μέσω της κεφαλίδας Vary
Εκκαθάριση CDN
Το Smart Money εκκαθαρίζει αυτόματα την προσωρινή μνήμη CDN όταν ενημερώνονται τα δεδομένα:
// Εκκαθάριση συγκεκριμένης URL από το 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
Ελέγξτε τις κεφαλίδες απάντησης για να δείτε εάν η αίτηση εξυπηρετήθηκε από την προσωρινή μνήμη:
// Επιτυχία προσωρινής μνήμης από το άκρο 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;
}
Κρυφή Μνήμη Service Worker
Για υποστήριξη εκτός σύνδεσης και προηγμένες στρατηγικές κρυφής μνήμης, χρησιμοποιήστε Service Workers:
// Κρυφή μνήμη API responses με Service Worker
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))
);
}
});
Στρατηγικές Cache Busting
Μερικές φορές χρειάζεται να αναγκάσετε τους πελάτες να λάβουν νέα δεδομένα. Χρησιμοποιήστε αυτές τις τεχνικές:
Παράμετρος Έκδοσης
Προσθέστε μια παράμετρο έκδοσης για να ακυρώσετε την κρυφή μνήμη όταν αλλάζουν τα δεδομένα:
// Συμπερίληψη έκδοσης δεδομένων ή χρονικής σήμανσης
https://api.smartmoneyapi.com/v1/whales/btc?v=1709980800
// Όταν ενημερώνονται τα δεδομένα, αυξήστε την έκδοση
https://api.smartmoneyapi.com/v1/whales/btc?v=1709981000
// Νέο URL = νέα εγγραφή κρυφής μνήμης
Εξαναγκασμός Επαναλήψεως
Παράκαμψη κρυφής μνήμης με Cache-Control: no-cache όταν χρειάζεστε νέα δεδομένα:
// JavaScript: Εξαναγκασμός νέου αιτήματος
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. Σεβασμός Κεφαλίδων Απόκρισης
Πάντα να σέβεστε τις κεφαλίδες Cache-Control από το Smart Money API. Μην αποθηκεύετε περιεχόμενο με no-store ή no-cache.
2. Εφαρμογή Υποθετικών Αιτημάτων
Στείλτε τις κεφαλίδες If-None-Match (ETag) και If-Modified-Since όταν επαναεπικυρώνετε περιεχόμενο από την κρυφή μνήμη. Εξοικονομήστε εύρος ζώνης με αποκρίσεις 304.
3. Αποθήκευση κατάλληλα ανά Τύπο Δεδομένων
- Δεδομένα σε πραγματικό χρόνο (ποσοστά χρηματοδότησης): μέγιστη κρυφή μνήμη 1-5 δευτερολέπτων
- Ζωντανά σήματα (κίνηση φαλαινών): κρυφή μνήμη 5-30 δευτερολέπτων
- Ωριαία δεδομένα (OHLCV): κρυφή μνήμη 1 ώρας
- Ιστορικά δεδομένα: κρυφή μνήμη 24 ωρών
- Στατικό περιεχόμενο: κρυφή μνήμη 7 ημερών
4. Παρακολούθηση Αποτελεσματικότητας Κρυφής Μνήμης
Παρακολουθήστε τα ποσοστά επιτυχίας και τις βελτιώσεις στην καθυστέρηση. Ρυθμίστε τους χρόνους TTL βάσει των απαιτήσεων φρεσκάδας δεδομένων και της απόδοσης της κρυφής μνήμης.
5. Χρήση Κεφαλίδων Vary με Προσοχή
Οι κεφαλίδες Vary μειώνουν τα hits της κρυφής μνήμης δημιουργώντας ξεχωριστές εγγραφές. Χρησιμοποιήστε τις μόνο όταν είναι απαραίτητο για διαφορετικά επίπεδα πιστοποίησης ή παραμέτρους.
6. Αποθήκευση σε Πολλαπλά Επίπεδα
Εφαρμόστε κρυφή μνήμη σε επίπεδα CDN, browser και εφαρμογής. Κάθε επίπεδο πιάνει αιτήματα πριν φτάσουν στην πηγή.
Βελτιστοποίηση Απόδοσης API
Η υποδομή κρυφής μνήμης του Smart Money API εξασφαλίζει αποκρίσεις κάτω των 100ms σε παγκόσμια κλίμακα. Εφαρμόστε έξυπνες στρατηγικές κρυφής μνήμης για μεγιστοποίηση της απόδοσης και ελαχιστοποίηση του κόστους.
Σύγκριση Σχεδίων
Όλα τα σχέδια περιλαμβάνουν πλήρη κρυφή μνήμη CDN. Τα υψηλότερα επίπεδα παρέχουν API ελέγχου και εκκαθάρισης κρυφής μνήμης.