Menyimpan ke cache

Halaman ini membahas cache bawaan Cloud Storage. Cloud Storage juga kompatibel dengan CDN pihak ketiga.

Ringkasan

Jika objek Cloud Storage di-cache, salinan data objek tersebut disimpan di cache Google atau cache internet, sehingga objek Anda dapat disajikan lebih cepat dalam permintaan mendatang. Meskipun penyimpanan cache dapat meningkatkan performa, Anda juga berisiko menyajikan konten lama jika Anda melakukan pembaruan pada objek tetapi cache tetap menyajikan versi sebelumnya dari objek tersebut.

Cache bawaan untuk Cloud Storage

Cloud Storage dapat berperilaku seperti Jaringan Penayangan Konten (CDN) tanpa memerlukan pekerjaan di pihak Anda, karena data objek disimpan dalam cache di jaringan Cloud Storage jika metadata Cache-Control-nya disetel untuk mengizinkan penyimpanan dalam cache dan kriteria berikut terpenuhi:

Cloud Storage mengikuti nilai standar untuk Cache-Control, seperti berikut:

  • public: objek dapat di-cache.

  • private: objek tidak akan di-cache oleh Cloud Storage, tetapi dapat di-cache dalam cache lokal pemohon.

  • no-cache: objek dapat di-cache, tetapi tidak dapat digunakan untuk memenuhi permintaan mendatang, kecuali telah divalidasi terlebih dahulu oleh Cloud Storage.

  • no-store: objek tidak dapat di-cache.

  • max-age=TIME_IN_SECONDS: durasi waktu objek dapat di-cache sebelum dianggap tidak berlaku. Anda dapat menetapkan max-age ke durasi waktu berapa pun. Objek yang tidak berlaku tidak disajikan dari cache, kecuali dalam kondisi khusus.

Untuk menetapkan metadata Cache-Control untuk objek, lihat Mengedit metadata objek.

Perilaku penyimpanan dalam cache bawaan dengan kebijakan Penolakan IAM

Jika ada kebijakan IAM Deny tingkat organisasi yang membatasi akses baca untuk objek dari ID akun utama allUsers, caching bawaan akan dinonaktifkan untuk objek, meskipun ada kebijakan IAM level bucket yang memberikan akses baca untuk objek ke allUsers. Namun, jika kebijakan IAM Deny hanya membatasi pengguna individual, cache bawaan tetap diaktifkan untuk objek.

Pertimbangan performa

Performa dapat jauh lebih baik untuk objek yang dapat di-cache secara publik. Jika Anda memiliki objek yang digunakan untuk mengontrol banyak klien dan, sebagai akibatnya, ingin menonaktifkan caching untuk memberikan data terbaru:

  • Sebaiknya setel metadata Cache-Control objek ke public dengan max-age yang berdurasi 15-60 detik. Sebagian besar aplikasi dapat menoleransi objek yang tidak berlaku lagi selama beberapa detik, sebagai imbalan atas peningkatan performa.

  • Gunakan Cache-Control: no-store untuk suatu objek guna menunjukkan bahwa objek tersebut tidak boleh di-cache untuk permintaan berikutnya di cache mana pun.

Langkah berikutnya