Jika menggunakan Pub/Sub untuk memublikasikan pesan yang berjumlah banyak data, Anda dapat menggunakan gRPC untuk mengompresi data guna menghemat biaya jaringan sebelum klien penayang Anda mengirimkan permintaan publikasi. Kompresi Pub/Sub untuk gRPC menggunakan algoritma Gzip.
Dokumen ini memberikan informasi tentang cara mengompresi pesan yang dipublikasikan ke suatu topik.
Tentang mengompresi pesan
Rasio kompresi untuk menggunakan fitur kompresi sisi klien gRPC berbeda untuk klien penayang yang berbeda dan bergantung pada faktor berikut:
Jumlah data. Rasio kompresi meningkat saat ukuran payload meningkat dari beberapa ratus byte menjadi banyak kilobyte data. Setelan batch permintaan publikasi menentukan jumlah data yang disertakan dalam setiap permintaan publikasi. Sebaiknya aktifkan setelan batch bersama dengan kompresi gRPC untuk mendapatkan hasil terbaik.
Jenis data. Data berbasis teks seperti JSON atau XML lebih mudah dikompresi dibandingkan dengan data biner seperti gambar.
Jika klien penayang Anda menggunakan Google Cloud, Anda dapat menggunakan metrik Byte terkirim (instance/network/sent_bytes_count
) untuk mengukur throughput publikasi dalam byte. Jika klien penayang Anda berada di aplikasi yang berbeda, Anda harus menggunakan alat khusus klien untuk melakukan pengukuran.
Contoh kode di bagian ini menampilkan contoh cuplikan kode library klien Java yang juga menyertakan kompresi gRPC.
Sebelum memulai
Sebelum mengonfigurasi alur kerja publikasi, pastikan Anda telah menyelesaikan tugas berikut:
- Pelajari topik dan alur kerja publikasi.
- Buat topik.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk mengompresi pesan,
minta administrator untuk memberi Anda peran IAM
Pub/Sub Publisher (roles/pubsub.publisher
) sesuai topik.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Anda memerlukan izin tambahan untuk membuat atau memperbarui topik dan langganan.
Mengompresi pesan
C++
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C++ di Panduan Memulai: Menggunakan Library Klien. Untuk informasi selengkapnya, lihat dokumentasi referensi Pub/Sub C++ API.
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan Memulai: Menggunakan Library Klien. Untuk informasi selengkapnya, lihat dokumentasi referensi API Pub/Sub Java.
Langkah selanjutnya
Untuk mempelajari cara mengonfigurasi opsi publikasi lanjutan, lihat referensi berikut: