Kompresi dinamis otomatis mengompresi respons yang disajikan oleh Cloud CDN. Ukuran data yang dikirim melalui jaringan berkurang sebesar 60% hingga 85% dalam kasus umum.
Pengurangan ukuran akan mengurangi waktu yang diperlukan untuk mendownload konten. Untuk aset penting seperti stylesheet (CSS), skrip (JavaScript), dan manifes video (HLS/DASH), hal ini dapat mengurangi waktu pemuatan halaman dan waktu mulai video.
Anda dapat mempelajari lebih lanjut manfaat mengompresi respons dalam panduan Dasar-Dasar Web.
Anda dapat mengaktifkan kompresi pada layanan backend atau bucket backend.
Contoh kasus penggunaan
Kompresi dinamis akan langsung mengurangi ukuran data yang dikirim dari edge Cloud CDN ke klien. Dampak langsungnya antara lain:
- Mengurangi ukuran CSS dan JavaScript, sehingga mempercepat rendering halaman web dan mengurangi waktu untuk First Contentful Paint, yang merupakan metrik performa web yang penting.
Memberikan dampak positif yang besar saat meng-cache respons REST API, seperti payload JSON. Payload ini dikompresi dengan baik karena adanya pengulangan kunci, spasi kosong, dan tanda kurung kurawal. Meng-cache API publik selama 5—10 detik adalah pendekatan populer untuk mengurangi beban server asal sekaligus mempertahankan keaktualan data.
Bahkan tanpa caching, kompresi respons ini dapat mengurangi total byte yang dikirim hingga 90%.
Meningkatkan waktu mulai pemutaran untuk penayangan video dan latensi gabung untuk live streaming. Playlist live (manifest) berukuran besar memiliki sejumlah besar data berulang, termasuk awalan host + jalur tiap segmen, serta metadata playlist HLS atau DASH. Makin cepat muatan atau update playlist dapat didownload, makin sedikit waktu yang dibutuhkan klien untuk mengurai dan mulai mendownload segmen video yang dirujuk. Playlist HLS dan DASH sering kali mengalami pengurangan ukuran total lebih dari 90%.
Sebelum memulai
Pastikan hal-hal berikut:
- Backend yang mendukung Cloud CDN telah dikonfigurasi. Jika Cloud CDN belum dikonfigurasi, Anda dapat mengikuti salah satu panduan penyiapan.
- Backend Anda memiliki konten yang dapat dikompresi yang siap disajikan, seperti aset web atau manifes video antara 1 KiB dan 10 MiB (inklusif).
- Klien tidak mengandalkan pengambilan konten parsial dengan permintaan rentang atau dengan ETag yang kuat. Keduanya tidak kompatibel dengan kompresi dinamis.
- Klien dapat menangani respons tanpa header
Content-Length. Misalnya, cache tidak ditemukan yang dikompresi Cloud CDN tidak memiliki headerContent-Length. - Anda memiliki peran IAM Compute Load Balancer Admin (
roles/compute.loadBalancerAdmin), yang diperlukan untuk membuat perubahan pada konfigurasi backend Anda.
Mengaktifkan kompresi pada layanan backend atau bucket backend
Untuk mengaktifkan kompresi, ikuti langkah-langkah berikut.
Konsol
Menambahkan server asal baru
Untuk menambahkan dan menyiapkan server asal baru, ikuti petunjuk di Ringkasan penyiapan untuk jenis backend yang sesuai. Saat membuat server asal, gunakan bagian Advanced options untuk mengonfigurasi kompresi dinamis dengan memilih Automatic dalam daftar Compression mode.
Mengedit server asal yang ada
Untuk mengedit server asal Cloud CDN yang ada:
Di Konsol Google Cloud , buka halaman Origins Cloud CDN.
Klik nama server asal yang ingin Anda edit, lalu klik Edit.
Di bagian Origin basics, klik Next.
Di bagian Host and path rules, klik Next.
Di bagian Cache performance, buka Advanced options.
Di daftar Compression mode, pilih Automatic.
Untuk menerapkan perubahan, klik Done.
gcloud
Untuk layanan backend, gunakan perintah gcloud compute backend-services
create atau perintah gcloud compute backend-services
update dengan flag --compression-mode.
Untuk bucket backend, gunakan perintah gcloud compute backend-buckets create atau perintah gcloud compute backend-buckets update dengan flag --compression-mode.
Untuk layanan backend baru, gunakan perintah create:
gcloud compute backend-services create BACKEND_SERVICE_NAME \
--compression-mode=AUTOMATIC