Cloud CDN (Jaringan Penayangan Konten) menggunakan jaringan edge global Google untuk menayangkan konten lebih dekat ke pengguna, sehingga mempercepat situs dan aplikasi Anda.
Cloud CDN berfungsi dengan Load Balancer Aplikasi eksternal global atau Load Balancer Aplikasi klasik untuk mengirimkan konten kepada pengguna Anda. Load Balancer Aplikasi eksternal menyediakan alamat IP dan port frontend yang menerima permintaan serta backend yang merespons permintaan.
Konten Cloud CDN dapat bersumber dari berbagai jenis backend.
Di Cloud CDN, backend ini juga disebut server asal. Gambar 1 mengilustrasikan bagaimana respons dari server origin yang berjalan di instance virtual machine (VM) mengalir melalui Load Balancer Aplikasi eksternal sebelum dikirim oleh Cloud CDN. Dalam situasi ini, Google Front End (GFE) terdiri dari Cloud CDN dan Load Balancer Aplikasi eksternal.
Cara kerja Cloud CDN
Saat pengguna meminta konten dari Load Balancer Aplikasi eksternal, permintaan tersebut akan tiba di GFE yang berada di edge jaringan Google sedekat mungkin dengan pengguna.
Jika peta URL load balancer merutekan traffic ke layanan backend atau bucket backend yang telah mengonfigurasi Cloud CDN, GFE akan menggunakan Cloud CDN.
Hit cache dan cache tidak ditemukan
Cache adalah sekelompok server yang menyimpan dan mengelola konten sehingga permintaan mendatang untuk konten tersebut dapat ditayangkan lebih cepat. Konten dalam cache adalah salinan konten yang dapat di-cache yang disimpan di server asal.
Jika GFE mencari di cache Cloud CDN dan menemukan respons yang di-cache untuk permintaan pengguna, GFE akan mengirimkan respons yang di-cache tersebut ke pengguna. Hal ini disebut cache hit. Saat hit cache terjadi, GFE akan mencari konten berdasarkan kunci cache dan merespons langsung pengguna, sehingga mempersingkat waktu perjalanan bolak-balik dan menghemat server origin agar tidak harus memproses permintaan.
Hit sebagian terjadi saat permintaan ditayangkan sebagian dari cache dan sebagian dari backend. Hal ini dapat terjadi jika hanya sebagian konten yang diminta yang disimpan dalam cache Cloud CDN, seperti yang dijelaskan dalam Dukungan untuk permintaan rentang byte.
Saat pertama kali konten diminta, GFE menentukan bahwa konten tersebut tidak dapat memenuhi permintaan dari cache. Hal ini disebut cache tidak ditemukan. Saat cache tidak ditemukan, GFE akan meneruskan permintaan ke Load Balancer Aplikasi eksternal. Load balancer kemudian meneruskan permintaan ke salah satu server origin Anda. Saat cache menerima konten, GFE akan meneruskan konten tersebut kepada pengguna.
Jika respons server origin terhadap permintaan ini dapat disimpan dalam cache, Cloud CDN akan menyimpan respons tersebut dalam cache Cloud CDN untuk permintaan mendatang. Transfer data dari cache ke klien disebut ekspor cache. Transfer data ke cache disebut cache masuk.
Gambar 2 menunjukkan hit cache dan miss cache:
- Server origin yang berjalan di instance VM mengirim respons HTTP(S).
- Load Balancer Aplikasi eksternal mendistribusikan respons ke Cloud CDN.
- Cloud CDN mengirimkan respons kepada pengguna akhir.
Untuk biaya yang terkait dengan hit cache dan miss cache, lihat Harga.
Rasio cache ditemukan
Rasio hit cache adalah persentase frekuensi objek yang diminta disajikan dari cache. Jika rasio hit cache adalah 60%, artinya objek yang diminta ditayangkan dari cache 60% dari waktu dan harus diambil dari origin 40% dari waktu.
Untuk informasi tentang pengaruh kunci cache terhadap rasio hit cache, lihat Menggunakan kunci cache. Untuk informasi pemecahan masalah, lihat Rasio hit cache rendah.
Melihat rasio cache ditemukan untuk jangka waktu yang singkat
Untuk melihat rasio hit cache selama jangka waktu kecil (beberapa menit terakhir):
Di konsol Google Cloud, buka halaman Cloud CDN.
Untuk setiap origin, lihat kolom Cache hit ratio.
t/a berarti konten yang di-load balance saat ini tidak di-cache atau belum diminta baru-baru ini.
Melihat rasio cache ditemukan untuk jangka waktu yang lebih lama
Untuk melihat rasio hit cache selama jangka waktu 1 jam hingga 30 hari:
- Di konsol Google Cloud, buka halaman Cloud CDN.
- Di kolom Origin name, klik nama origin.
- Klik tab Pemantauan.
- Opsional: pilih backend tertentu.
Rasio hit CDN adalah salah satu grafik pemantauan yang tersedia. Grafik yang menampilkan t/a berarti konten tidak di-cache atau belum diminta dalam rentang waktu yang ditampilkan.
Anda dapat menyesuaikan jangka waktu dengan memilih rentang waktu yang berbeda. Gambar berikut adalah contoh rentang waktu yang dapat Anda pilih:
Menyisipkan konten ke dalam cache
Penyimpanan dalam cache bersifat reaktif karena objek disimpan dalam cache tertentu jika permintaan melewati cache tersebut dan jika respons dapat di-cache. Objek yang disimpan dalam satu cache tidak otomatis direplikasi ke cache lain; pengisian cache hanya terjadi sebagai respons terhadap permintaan yang dimulai klien. Anda tidak dapat memuat cache sebelumnya kecuali dengan menyebabkan setiap cache merespons permintaan.
Jika server origin mendukung permintaan rentang byte, Cloud CDN dapat memulai beberapa permintaan pengisian cache sebagai reaksi terhadap satu permintaan klien.
Menayangkan konten dari cache
Setelah Anda mengaktifkan Cloud CDN, penyimpanan dalam cache akan otomatis dilakukan untuk semua konten yang dapat di-cache. Server origin Anda menggunakan header HTTP untuk menunjukkan respons mana yang disimpan dalam cache. Anda juga dapat mengontrol kemampuan penyimpanan dalam cache dengan menggunakan mode cache.
Saat Anda menggunakan bucket backend, server origin-nya adalah Cloud Storage. Saat menggunakan instance VM, server origin adalah software server web yang Anda jalankan di instance tersebut.
Cloud CDN menggunakan cache di berbagai lokasi di seluruh dunia. Karena sifat cache, tidak mungkin untuk memprediksi apakah permintaan tertentu ditayangkan dari cache. Namun, Anda dapat memperkirakan bahwa permintaan populer untuk konten yang dapat di-cache sebagian besar waktu ditayangkan dari cache, sehingga menghasilkan latensi yang berkurang secara signifikan, biaya yang berkurang, dan beban yang berkurang pada server asal Anda.
Untuk mengetahui informasi selengkapnya tentang apa yang di-cache Cloud CDN dan berapa lama, lihat Ringkasan penyimpanan cache.
Untuk melihat konten yang ditayangkan Cloud CDN dari cache, Anda dapat melihat log.
Menghapus konten dari cache
Untuk menghapus item dari cache, Anda dapat membatalkan validasi konten yang di-cache. Untuk mengetahui informasi selengkapnya, lihat:
Pengabaian cache
Untuk mengabaikan Cloud CDN, Anda dapat meminta objek langsung dari bucket Cloud Storage atau VM Compute Engine. Misalnya, URL untuk objek bucket Cloud Storage akan terlihat seperti ini:
https://storage.googleapis.com/STORAGE_BUCKET/FILENAME
Pengusiran dan masa berlaku
Agar konten dapat ditayangkan dari cache, konten tersebut harus telah disisipkan ke cache, tidak boleh dihapus, dan tidak boleh habis masa berlakunya.
Penghapusan dan masa berlaku adalah dua konsep yang berbeda. Keduanya memengaruhi konten yang ditayangkan, tetapi tidak saling memengaruhi secara langsung.
Pengusiran
Jika menguji penyimpanan dalam cache konten dengan sejumlah kecil permintaan, Anda mungkin melihat bahwa konten dihapus.
Setiap cache memiliki batas jumlah yang dapat disimpan. Namun, Cloud CDN menambahkan konten ke cache meskipun cache sudah penuh. Untuk menyisipkan konten ke cache penuh, cache akan menghapus konten lain terlebih dahulu untuk memberi ruang. Tindakan ini disebut pengusiran. Cache biasanya penuh, sehingga cache terus-menerus mengeluarkan konten. Mereka umumnya menghapus konten yang belum diakses baru-baru ini, terlepas dari masa berlaku konten. Masa berlaku konten yang dihapus mungkin sudah habis, dan mungkin tidak. Menetapkan waktu habis masa berlaku tidak memengaruhi penghapusan.
Konten tidak populer berarti konten yang sudah lama tidak diakses. Sesekali dan tidak populer bersifat relatif terhadap sebagian besar item lain dalam cache. Beberapa project Google Cloud menggunakan kumpulan ruang cache yang sama karena project tersebut ditayangkan dari kumpulan GFE yang sama. Popularitas konten relatif dibandingkan di beberapa project, bukan hanya dalam satu project.
Seiring dengan meningkatnya traffic, cache juga akan menghapus lebih banyak konten yang di-cache.
Seperti semua cache berskala besar, konten dapat dihapus secara tidak terduga, sehingga tidak ada permintaan tertentu yang dijamin akan ditayangkan dari cache.
Akhir masa berlaku
Konten dalam cache HTTP(S) dapat memiliki waktu habis masa berlaku yang dapat dikonfigurasi. Waktu habis masa berlaku akan memberi tahu cache untuk tidak menayangkan konten lama, meskipun konten tersebut belum dihapus.
Misalnya, pertimbangkan URL foto jam. Responsnya harus ditetapkan agar berakhir dalam waktu kurang dari satu jam. Jika tidak, konten yang ditayangkan mungkin berupa gambar lama dari cache.
Untuk mengetahui informasi tentang cara menyesuaikan waktu habis masa berlaku, lihat Menggunakan setelan dan penggantian TTL.
Permintaan yang dimulai oleh Cloud CDN
Jika server origin Anda mendukung permintaan rentang byte, Cloud CDN dapat mengirim beberapa permintaan ke server origin sebagai respons terhadap satu permintaan klien. Seperti yang dijelaskan dalam Dukungan untuk permintaan rentang byte, Cloud CDN dapat memulai dua jenis permintaan: permintaan validasi dan permintaan rentang byte.
Setelan lokasi data Layanan Cloud Platform lainnya
Menggunakan Cloud CDN berarti data dapat disimpan di lokasi penayangan di luar region atau zona server origin Anda. Hal ini normal dan cara kerja cache HTTP di internet. Berdasarkan Persyaratan Khusus Layanan dalam Persyaratan Layanan Google Cloud Platform, Setelan Lokasi Data yang tersedia untuk Layanan Cloud Platform tertentu tidak berlaku untuk Data Pelanggan Inti untuk Layanan Cloud Platform masing-masing saat digunakan dengan produk dan layanan Google lainnya (dalam hal ini, layanan Cloud CDN). Jika Anda tidak menginginkan hasil ini, jangan gunakan layanan Cloud CDN.
Dukungan untuk sertifikat SSL yang dikelola Google
Anda dapat menggunakan sertifikat yang dikelola Google saat Cloud CDN diaktifkan.
Google Cloud Armor dengan Cloud CDN
Google Cloud Armor dengan Cloud CDN memiliki dua jenis kebijakan keamanan:
- Kebijakan keamanan Edge. Kebijakan ini dapat diterapkan ke server origin yang mengaktifkan Cloud CDN. Kebijakan ini berlaku untuk semua traffic, sebelum pencarian CDN.
- Kebijakan keamanan backend. Kebijakan ini hanya diterapkan untuk permintaan konten dinamis, cache tidak ditemukan, atau permintaan lain yang ditujukan untuk server origin Anda.
Untuk informasi selengkapnya, lihat dokumentasi Google Cloud Armor.
Langkah selanjutnya
- Untuk mengaktifkan Cloud CDN untuk instance load balancing HTTP(S) dan bucket penyimpanan, lihat Menggunakan Cloud CDN.
- Untuk menggunakan Cloud CDN dengan Google Kubernetes Engine, lihat Mengonfigurasi Cloud CDN melalui Ingress.
- Untuk menemukan lokasi kehadiran GFE, lihat Lokasi cache.