Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
Apigee offre la possibilità di archiviare i dati in una cache in fase di runtime per garantire la persistenza e un recupero più rapido.
- I dati vengono inizialmente archiviati nella cache in memoria del processore di messaggi, denominata cache L1.
- La cache L1 è limitata dalla quantità di memoria riservata, espressa come percentuale della memoria JVM.
- Le voci memorizzate nella cache vengono successivamente rese persistenti nella cache L2, accessibile a tutti i processori di messaggi. Per ulteriori dettagli, consulta la sezione di seguito.
- La cache L2 non ha un limite fisso al numero di voci della cache, tuttavia la dimensione massima della voce che può essere memorizzata nella cache è limitata a 256 kB. La dimensione della cache di 256 kB è quella consigliata per ottenere prestazioni ottimali.
Antipattern
Questo particolare anti-pattern illustra le implicazioni del superamento delle attuali limitazioni delle dimensioni della cache in Apigee.
Quando i dati di dimensioni superiori a 256 kB vengono memorizzati nella cache, le conseguenze sono le seguenti:
- Le richieste API eseguite per la prima volta su ciascuno dei processori di messaggi devono ottenere i dati in modo indipendente dall'origine (criterio o server di destinazione), poiché le voci > 256 kB non sono disponibili nella cache L2.
- L'archiviazione di dati più grandi (> 256 kB) nella cache L1 tende a causare maggiore stress sulle risorse della piattaforma. Ne consegue che la memoria della cache L1 viene riempita più rapidamente e, di conseguenza, riduce la disponibilità di spazio per altri dati. Di conseguenza, non sarà possibile memorizzare i dati nella cache con la modalità desiderata.
- Le voci memorizzate nella cache dai processori di messaggi verranno rimosse al raggiungimento del limite di voci. In questo modo i dati vengono nuovamente recuperati dalla sorgente originale sui rispettivi processori di messaggi.
Impatto
- I dati di dimensioni > 256 kB non verranno archiviati in L2/cache persistente.
- Chiamate più frequenti all'origine originale (un criterio o un server di destinazione) comportano un aumento delle latenze per le richieste API.
Best practice
- Per ottenere prestazioni ottimali, è preferibile archiviare dati di dimensioni < 256 kB nella cache.
- Se è necessario archiviare dati > 256 kB, considera quanto segue:
- Utilizzare qualsiasi database appropriato per l'archiviazione di dati di grandi dimensioni
OR
- Compressione dei dati
- Utilizzare qualsiasi database appropriato per l'archiviazione di dati di grandi dimensioni