Dasar-Dasar Konfigurasi Runtime

Dokumen ini memberikan ringkasan fitur Runtime Configurator dan menjelaskan konsep utama yang terkait dengan Runtime Configurator. Untuk mempelajari cara membuat resource RuntimeConfig, baca Membuat dan Menghapus Resource RuntimeConfig.

Apa itu Runtime Configurator?

Dengan fitur Runtime Configurator, Anda dapat menentukan dan menyimpan data sebagai hierarki pasangan nilai kunci di Google Cloud Platform. Anda dapat menggunakan pasangan nilai kunci ini sebagai cara untuk:

  • Mengonfigurasi layanan secara dinamis
  • Menyampaikan status layanan
  • Kirim notifikasi perubahan data
  • Berbagi informasi di antara beberapa tingkat layanan

Misalnya, bayangkan skenario saat Anda memiliki cluster node yang menjalankan prosedur startup. Selama startup, Anda dapat mengonfigurasi node untuk melaporkan statusnya ke Runtime Configurator, lalu meminta aplikasi lain mengkueri Runtime Configurator dan menjalankan tugas tertentu berdasarkan status node.

Runtime Configurator juga menawarkan layanan Watcher dan layanan Pelayan. Layanan Watcher memantau pasangan kunci tertentu dan menampilkannya saat nilai pasangan kunci berubah, sedangkan layanan Waiter menunggu kondisi akhir tertentu dan menampilkan respons setelah kondisi akhir tersebut terpenuhi.

Anda menggunakan Runtime Configurator dengan gcloud CLI, atau sebagai API mandiri.

Konsep

  • Resource konfigurasi

    Resource Config berisi daftar hierarki variabel. Anda dapat membuat konfigurasi yang berbeda untuk tujuan yang berbeda. Misalnya, Anda dapat memisahkan konfigurasi berdasarkan lingkungan (prod, dev, pengujian), berdasarkan tingkat aplikasi atau layanan yang berbeda (back end, front end), atau berdasarkan entity (satu konfigurasi per pengguna aplikasi Anda).

  • Variabel

    Variabel adalah pasangan nilai kunci yang termasuk dalam resource RuntimeConfig. Kunci variabel memiliki format berikut:

    projects/[project_id]/configs/[CONFIG_ID]/variables/[VARIABLE_NAME]
    

    Anda dapat menetapkan, mendapatkan, dan memantau nilai variabel untuk menyampaikan informasi ke aplikasi, memberi sinyal status selesai, mengirim notifikasi tentang perubahan data, dan lainnya. Variabel bersifat hierarkis, sehingga kunci variabel dapat memiliki beberapa level. Misalnya, kunci variabel sampel dapat berupa:

    webserver-1/users/name
    webserver-1/users/favorite_color
    
  • Watcher

    Anda dapat menggunakan metode watch() untuk mengamati variabel dan menampilkannya saat variabel berubah, waktu watcher habis, atau watcher dihapus. Gunakan fungsi watch() untuk mengonfigurasi aplikasi secara dinamis berdasarkan perubahan data Anda.

  • Pelayan

    Jika Anda membuat resource Waiter untuk melihat awalan jalur tertentu, pelayan akan kembali setelah jumlah variabel di bawah awalan tersebut mencapai jumlah tertentu. Hal ini disebut sebagai kondisi Kardinalitas.

    Misalnya, jika Anda menetapkan kondisi untuk jalur /foo dan jumlah jalur ditetapkan ke 2, penyiapan berikut akan memenuhi kondisi tersebut:

    • /foo/variable1 = "value1"
    • /foo/variable2 = "value2"
    • /bar/variable3 = "value3" # Not /foo path

    Seorang pelayan memiliki kondisi gagal dan berhasil yang dapat Anda tetapkan.

    Setelah Anda membuat Waiter, layanan akan menampilkan objek operasi yang Anda masukkan untuk diselesaikan. Operasi akan selesai jika salah satu dari hal berikut terjadi:

    • Kondisi success terpenuhi.
    • Kondisi failure terpenuhi.
    • Pelayan mencapai batas waktu waktu tunggu yang ditentukan dalam permintaan awal.

    Penggunaan pelayan ideal untuk skenario startup, ketika Anda mungkin perlu menjeda deployment hingga sejumlah layanan tertentu berjalan.

Langkah selanjutnya