Praktik terbaik untuk menggunakan metrik Pub/Sub sebagai sinyal penskalaan

Jika Anda menggunakan metrik Pub/Sub sebagai sinyal untuk melakukan penskalaan otomatis pipeline, berikut beberapa rekomendasinya.

Gunakan lebih dari satu sinyal untuk menskalakan pipeline Anda secara otomatis

Jangan hanya menggunakan metrik Pub/Sub untuk menskalakan pipeline Anda secara otomatis. Hal ini dapat menyebabkan beberapa skenario saat Anda memiliki satu titik kegagalan untuk keputusan penskalaan otomatis. Sebagai gantinya, gunakan kombinasi sinyal untuk memicu penskalaan otomatis. Contoh sinyal tambahan adalah tingkat pemakaian CPU klien. Sinyal ini dapat menunjukkan apakah tugas klien menangani pekerjaan dan jika peningkatan skala dapat memungkinkan tugas klien menangani lebih banyak pekerjaan. Beberapa contoh sinyal dari produk Cloud lainnya yang dapat Anda gunakan untuk pipeline adalah sebagai berikut:

  • Compute Engine (GCE) mendukung penskalaan otomatis berdasarkan sinyal seperti pemakaian CPU dan metrik Monitoring. Compute Engine juga mendukung banyak metrik dan sinyal untuk keandalan yang lebih baik.

    Untuk mengetahui informasi selengkapnya tentang penskalaan dengan metrik Monitoring, lihat Penskalaan berdasarkan metrik Monitoring. Untuk mengetahui informasi selengkapnya tentang penskalaan dengan pemakaian CPU, lihat Penskalaan berdasarkan pemakaian CPU.

  • Penskalaan otomatis Pod Horizontal (HPA) Google Kubernetes Engine (GKE) mendukung penskalaan otomatis berdasarkan penggunaan resource seperti penggunaan CPU dan memori, metrik Kubernetes kustom, dan metrik eksternal seperti metrik Monitoring untuk Pub/Sub. {i>Mockup <i}juga mendukung banyak sinyal.

    Untuk informasi selengkapnya, lihat Penskalaan otomatis Pod Horizontal.

Cara menangani kesenjangan metrik saat terjadi

Jangan berasumsi bahwa tidak adanya metrik berarti tidak ada pesan untuk diproses. Misalnya, jika Anda merespons metrik yang hilang, Anda harus memperkecil skala tugas pemrosesan hingga nol, pesan yang sudah ada dalam backlog atau yang dipublikasikan selama waktu ini tidak akan dipakai. Hal ini akan meningkatkan latensi end-to-end. Untuk meminimalkan latensi, tetapkan jumlah tugas minimum yang lebih besar dari nol, sehingga Anda selalu siap menangani pesan yang dipublikasikan, meskipun metrik Pub/Sub terbaru menunjukkan antrean kosong.

Penskala otomatis GCE dan GKE HPA dirancang untuk mempertahankan jumlah replika saat ini saat metrik tidak tersedia. Hal ini memberikan jaring pengaman jika tidak ada metrik yang tersedia.

Anda juga dapat menerapkan mekanisme kontrol alur Pub/Sub untuk membantu mencegah tugas kewalahan jika skalanya diturunkan secara tidak sengaja karena metrik yang hilang.