Ringkasan penyimpanan dalam cache dan persistensi

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Fitur persistensi Apigee mencakup cache, peta nilai kunci, dan kumpulan properti. Jika menggunakan Apigee hybrid, Anda dapat menggunakan secret Kubernetes untuk menyimpan data sensitif.

Fitur Gunakan
Cache Dengan menggunakan kebijakan untuk caching tujuan umum, Anda dapat mempertahankan objek apa pun yang diperlukan proxy di beberapa sesi permintaan/respons. Anda juga dapat meng-cache respons resource backend dengan kebijakan ResponseCache. Penyimpanan respons dalam cache sangat membantu saat data backend hanya diperbarui secara berkala. Kebijakan ResponseCache dapat mengurangi panggilan ke sumber data backend.
Peta nilai kunci Peta nilai kunci (KVM) menyediakan penyimpanan runtime umum untuk data yang dapat berubah secara berkala. Misalnya: data sesi pengguna, keranjang belanja, dll. Entri KVM dapat dienkripsi.
Kumpulan properti Set properti cocok untuk menyimpan data konfigurasi yang tidak sering berubah.
Secret Kubernetes (Khusus Apigee Hybrid) Gunakan Secrets untuk menyimpan data sensitif seperti kredensial pengguna.

Caching

Resource cache yang tercakup dalam lingkungan dibuat secara dinamis saat kebijakan cache dijalankan dalam alur proxy API. Kebijakan cache mencakup kebijakan PopulateCache, kebijakan LookupCache, kebijakan InvalidateCache, dan kebijakan ResponseCache.

Item yang di-cache tetap berada dalam memori (L1) selama satu detik. Anda tidak dapat mengubah konfigurasi ini. Setelah satu detik, objek yang di-cache ditempatkan dalam database (L2) yang tersedia hingga cache berakhir. Untuk mengetahui detailnya, lihat Tingkat cache persisten dalam memori. Anda dapat mengelola detail cache, seperti waktu habis masa berlaku, melalui konfigurasi kebijakan cache. API Apigee disediakan yang memungkinkan Anda mencantumkan dan menghapus resource cache.

Saat menggunakan kebijakan cache, Anda memastikan keunikan kunci nilai yang di-cache dengan mengonfigurasi kunci cache. Kunci cache, bersama dengan nilai lain yang dapat Anda konfigurasi, memberi Anda cara yang andal untuk mendapatkan data yang sama dengan yang Anda masukkan. Ukuran cache dan ketersediaan tunduk pada batas tertentu.

Anda mungkin ingin menggunakan cache untuk:

  • Mengurangi latensi dan traffic. Permintaan dipenuhi dalam waktu yang lebih singkat dan dengan representasi yang digunakan kembali.
  • Mempertahankan data di seluruh transaksi. Anda dapat menyimpan data sesi untuk digunakan kembali di seluruh transaksi HTTP.
  • Mendukung keamanan. Cakupan akses ke entri cache sehingga hanya dapat diakses di lingkungan tertentu atau oleh proxy API tertentu.

Penyimpanan dalam cache respons backend

Anda dapat menyimpan respons resource backend dalam cache dengan kebijakan ResponseCache.

Hal ini sangat membantu saat data backend hanya diperbarui secara berkala. Kebijakan ResponseCache dapat mengurangi panggilan ke sumber data backend.

Melalui kebijakan ResponseCache, Anda juga dapat membuat Apigee melihat header penyimpanan cache respons HTTP tertentu dan mengambil tindakan sesuai dengan perintah header. Misalnya, pada respons dari target backend, Apigee mendukung header Cache-Control. Header ini dapat digunakan untuk mengontrol usia maksimum respons yang di-cache, dan sebagainya. Untuk mengetahui informasi selengkapnya, lihat Dukungan untuk header respons HTTP.

Caching tujuan umum jangka pendek

Dengan menggunakan kebijakan untuk caching tujuan umum, Anda dapat mempertahankan objek apa pun yang diperlukan proxy Anda di beberapa sesi permintaan/respons.

Dengan kebijakan PopulateCache, kebijakan LookupCache, dan kebijakan InvalidateCache, Anda dapat mengisi, mengambil, dan menghapus data yang di-cache saat runtime.

Misalnya, Anda dapat menyimpan sementara:

  • ID sesi untuk pengelolaan sesi.
  • Kredensial untuk panggilan keluar (seperti kunci API atau token akses OAuth).
  • Konten respons yang harus dipaginasi untuk aplikasi.

Saat runtime, kebijakan cache Anda menyalin nilai antara variabel proxy dan cache yang dikonfigurasi yang Anda tentukan. Saat nilai ditempatkan di cache, nilai tersebut disalin dari variabel yang Anda tentukan ke cache. Saat diambil dari cache, data tersebut akan disalin ke dalam variabel untuk digunakan oleh proxy Anda.

Untuk contoh dengan kode, lihat Contoh: Cache serbaguna.

Mengelola cache dengan Apigee API

Anda dapat mencantumkan dan menghapus cache menggunakan caches API.

Persistensi jangka panjang dengan peta nilai kunci (KVM)

Untuk menyimpan data terstruktur secara tidak terbatas, baik dienkripsi maupun tidak dienkripsi, Anda dapat membuat dan mengisi peta nilai kunci (KVM) yang berisi pasangan nilai/kunci arbitrer. Misalnya, Anda dapat menyimpan:

  • Peta yang mengorelasikan alamat IP dengan kode negara.
  • Daftar alamat IP yang diizinkan/ditolak aksesnya.
  • Peta yang mengorelasikan URL panjang dengan URL yang dipendekkan.
  • Data khusus lingkungan, seperti jumlah kuota dan waktu habis masa berlaku token OAuth.

KVM dapat memiliki salah satu dari tiga cakupan: organisasi, lingkungan, apiproxy. Misalnya, jika pasangan nilai kunci akan digunakan untuk semua API dalam organisasi, buat KVM di cakupan organisasi; atau jika hanya proxy API tertentu yang harus memiliki akses ke nilai kunci, buat KVM di cakupan apiproxy. Untuk mengetahui informasi selengkapnya, lihat Bekerja dengan peta nilai kunci.

Kumpulan properti

Set properti adalah kumpulan pasangan kunci/nilai kustom yang menyimpan data. Proxy API dapat mengambil data ini saat dijalankan.

Biasanya, Anda menggunakan set properti untuk menyimpan data yang tidak akan habis masa berlakunya dan tidak boleh dikodekan secara permanen dalam logika proxy API, seperti data konfigurasi. Anda dapat mengakses data set properti di mana saja dalam proxy tempat Anda dapat mengakses variabel alur.

Kasus penggunaan umum untuk set properti adalah memberikan nilai yang terkait dengan satu lingkungan atau lingkungan lainnya. Misalnya, Anda dapat membuat set properti cakupan lingkungan dengan nilai konfigurasi yang spesifik untuk proxy yang berjalan di lingkungan pengujian, dan set lainnya untuk lingkungan produksi.

Untuk mengetahui informasi selengkapnya, lihat Menggunakan set properti.

Secret Kubernetes

(Khusus Apigee Hybrid) Jika Anda sudah menggunakan Kubernetes untuk pengelolaan secret di vault kustom untuk data sensitif, Anda dapat mempertimbangkan untuk menggunakan Kubernetes Secrets. Sama seperti data KVM, Anda dapat mengakses data secret Kubernetes di variabel alur proxy API. Untuk mengetahui informasi selengkapnya, lihat Menyimpan data di secret Kubernetes.