Questa pagina si applica ad Apigee e Apigee hybrid.
Visualizza la documentazione di Apigee Edge.
Le funzionalità di persistenza di Apigee includono cache, mappe chiave-valore di insiemi di proprietà. Se utilizzi Apigee hybrid, puoi utilizzare i secret di Kubernetes per mantenere permanenti i dati sensibili.
Funzionalità | Utilizza |
---|---|
Cache | Utilizzando i criteri per la memorizzazione nella cache per uso generale, puoi mantenere invariati tutti gli oggetti richiesti dal proxy
in più sessioni di richiesta/risposta. Puoi anche memorizzare nella cache la risposta di una
risorsa di backend con il
criterio ResponseCache . La memorizzazione nella cache della risposta è particolarmente utile quando i dati di backend vengono aggiornati solo periodicamente. Il criterio ResponseCache può ridurre le chiamate al backend
diverse origini dati. |
Mappe di valori chiave | Le mappe chiave-valore (KVM) forniscono un archivio di runtime generale per i dati che possono cambiare periodicamente. Ad esempio: dati della sessione utente, carrello degli acquisti e così via. Le voci KVM possono essere criptate. |
Set di proprietà | I set di proprietà sono utili per archiviare i dati di configurazione che non cambiano spesso. |
Secret Kubernetes | (Solo Apigee Hybrid) Utilizza i secret per archiviare dati sensibili come le credenziali utente. |
Memorizzazione nella cache
Le risorse cache con ambito ambiente vengono create in modo dinamico quando un criterio relativo alla cache viene eseguito all'interno di un flusso proxy API. I criteri di memorizzazione nella cache includono il criterio PopulateCache, il criterio LookupCache, il criterio InvalidateCache e il criterio ResponseCache.
Un elemento memorizzato nella cache rimane nella memoria (L1) per un secondo. Non puoi modificare questa configurazione. Dopo un secondo, l'oggetto memorizzato nella cache viene inserito in un database (L2) dove è disponibile fino alla scadenza della cache. Per maggiori dettagli, vedi Livelli di cache permanente in memoria. Puoi gestire i dettagli della cache, ad esempio la data e l'ora di scadenza, tramite la configurazione di un criterio di cache. È fornita un'API Apigee che ti consente di elencare e eliminare le risorse della cache.
Quando utilizzi i criteri della cache, garantisci l'univocità delle chiavi dei valori memorizzati nella cache configurazione delle chiavi cache. Una chiave della cache, insieme ad altri valori che puoi configurare, ti offre un modo affidabile per recuperare gli stessi dati inseriti. Dimensioni cache e la disponibilità è soggetta a determinate limitazioni.
Ti consigliamo di utilizzare una cache per:
- Riduci latenza e traffico. Le richieste vengono soddisfatte in meno tempo e con rappresentazioni riutilizzate.
- Mantieni i dati nelle varie transazioni. Puoi archiviare i dati della sessione per riutilizzarli nelle transazioni HTTP.
- Supporta la sicurezza. Assegna l'ambito alle voci della cache in modo che sia possibile accedervi solo in un particolare ambiente o tramite un proxy API specifico.
Memorizzazione nella cache delle risposte del backend
Puoi memorizzare nella cache la risposta di una risorsa di backend con il criterio ResponseCache
.
Ciò è particolarmente utile quando i dati di backend vengono aggiornati solo periodicamente. Il criterio ResponseCache
può ridurre le chiamate alle origini dati di backend.
Tramite il criterio ResponseCache
, puoi anche chiedere ad Apigee di esaminare determinate intestazioni di memorizzazione nella cache della risposta HTTP e di intraprendere azioni in base alle direttive delle intestazioni. Ad esempio, nelle risposte dei target di backend, Apigee supporta l'intestazione Cache-Control
. Questa intestazione può essere utilizzata per controllare
l'età massima di una risposta memorizzata nella cache, tra le altre cose. Per ulteriori informazioni, consulta
Supporto per le intestazioni della risposta HTTP.
Memorizzazione nella cache generica a breve termine
Utilizzando i criteri per la memorizzazione nella cache per uso generale, puoi mantenere invariati tutti gli oggetti richiesti dal proxy in più sessioni di richiesta/risposta.
Con il criterio PopulateCache
, il criterio LookupCache
e il criterio InvalidateCache
,
puoi compilare, recuperare ed eliminare i dati memorizzati nella cache in fase di runtime.
Ad esempio, potresti archiviare temporaneamente:
- ID sessione per la gestione delle sessioni.
- Credenziali per le chiamate in uscita (ad esempio chiavi API o token di accesso OAuth).
- Contenuti della risposta che devono essere suddivisi in pagine per le app.
In fase di runtime, i criteri della cache copiano i valori tra le variabili proxy e la cache configurata da te specificato. Quando un valore viene inserito nella cache, viene copiato dalla variabile specificata in nella cache. Quando viene recuperato dalla cache, viene copiato nella variabile per essere utilizzato dal proxy.
Per un esempio con codice, consulta Esempio: memorizzazione nella cache per uso generale.
Gestione della cache con l'API Apigee
Puoi elencare ed eliminare le cache utilizzando API Caches.
Persistenza a lungo termine con mappe chiave-valore (KVM)
Per archiviare a tempo indeterminato i dati strutturati criptati o non criptati, puoi creare e completare le mappe chiave-valore (KVM) che contengono coppie chiave/valore arbitrarie. Ad esempio, potresti archiviare:
- Una mappa che mette in relazione gli indirizzi IP con i codici paese.
- Un elenco di indirizzi IP a cui è consentito o negato l'accesso.
- Una mappa che mette in relazione gli URL lunghi con gli URL abbreviati.
- Dati specifici dell'ambiente, come conteggi delle quote e date di scadenza dei token OAuth.
Le KVM possono avere uno di tre ambiti: organizzazione, ambiente e apiproxy. Ad esempio, se le coppie chiave/valore devono essere utilizzate per tutte le API di un'organizzazione, crea un KVM nell'ambito dell'organizzazione; oppure, se solo un proxy API specifico deve avere accesso a chiavi/valori, crea il KVM nell'ambito di apiproxy. Per ulteriori informazioni, consulta Utilizzare le mappe di valori chiave.
Set di proprietà
Un insieme di proprietà è una raccolta personalizzata di coppie chiave/valore in cui vengono archiviati i dati. I proxy API possono recuperare questi dati quando vengono eseguiti.
In genere, utilizzi i set di proprietà per archiviare dati non scaduti che non devono essere codificati nella logica del proxy API, ad esempio i dati di configurazione. Puoi accedere ai dati dei set di proprietà in qualsiasi punto di un proxy in cui possono accedere alle variabili di flusso.
Un caso d'uso comune per gli insiemi di proprietà è quello di fornire valori che associati a un ambiente o all'altro. Ad esempio, puoi creare un insieme di proprietà basato sull'ambiente con valori di configurazione specifici per i proxy in esecuzione nell'ambiente di test e un altro per l'ambiente di produzione.
Per saperne di più, consulta la sezione Utilizzare gli insiemi di proprietà.
Secret Kubernetes
(Solo Apigee hybrid) Se stai già utilizzando Kubernetes per la gestione dei secret in un vault personalizzato potresti prendere in considerazione l'utilizzo dei secret di Kubernetes. Proprio come con i dati KVM, puoi accedere ai dati secret Kubernetes nelle variabili di flusso proxy API. Per ulteriori informazioni, consulta Archiviare i dati in un secret Kubernetes.