Bagikan melalui


Kunci dan nilai

Azure App Configuration menyimpan data konfigurasi sebagai kunci-nilai. Kunci-nilai adalah representasi sederhana dan fleksibel dari pengaturan aplikasi yang digunakan oleh pengembang.

Kunci

Kunci berfungsi sebagai pengidentifikasi untuk kunci-nilai dan digunakan untuk menyimpan dan mengambil nilai yang sesuai. Ini adalah praktik umum untuk mengatur kunci ke dalam namespace hierarkis dengan menggunakan pemisah karakter, seperti / atau :. Gunakan konvensi yang paling cocok untuk aplikasi Anda. App Configuration memperlakukan kunci secara keseluruhan. App Configuration tidak mengurai kunci untuk mencari tahu bagaimana nama kunci terstruktur atau menerapkan aturan apa pun pada kunci.

Berikut adalah contoh nama kunci yang disusun ke dalam hierarki berdasarkan layanan komponen:

    AppName:Service1:ApiEndpoint
    AppName:Service2:ApiEndpoint

Penggunaan data konfigurasi dalam kerangka kerja aplikasi dapat menentukan skema penamaan tertentu untuk kunci-nilai. Misalnya, kerangka kerja Cloud Spring Java menentukan Environment sumber daya yang memasok pengaturan ke aplikasi Spring. Sumber daya ini diparameterkan oleh variabel yang mencakup nama aplikasi dan profil. Kunci untuk data konfigurasi terkait Spring Cloud biasanya dimulai dengan dua elemen ini dipisahkan oleh pemisah.

Kunci yang disimpan dalam App Configuration adalah string berbasis unicode yang peka huruf besar/kecil. Kunci app1 dan App1 berbeda di penyimpanan App Configuration. Ingatlah hal ini saat Anda menggunakan pengaturan konfigurasi dalam aplikasi karena beberapa kerangka kerja menangani kunci konfigurasi dengan tidak peka huruf besar/kecil. Sebaiknya jangan gunakan huruf besar/kecil untuk membedakan kunci.

Anda dapat menggunakan karakter unicode apa pun dalam nama kunci kecuali untuk %. Nama kunci juga tidak boleh . atau ... Ada batas ukuran gabungan 10 KB pada kunci-nilai. Batas ini mencakup semua karakter dalam kunci, nilainya, dan semua atribut opsional terkait. Dalam batas ini, Anda dapat memiliki banyak tingkat hierarki untuk kunci.

Desain namespace kunci

Ada dua pendekatan umum untuk penamaan kunci yang digunakan untuk data konfigurasi: datar atau hierarkis. Metode ini serupa dari sudut pandang penggunaan aplikasi, tetapi penamaan hierarkis menawarkan beberapa keuntungan:

  • Lebih mudah dibaca. Pemisah dalam fungsi nama kunci hierarkis sebagai spasi dalam kalimat. Mereka juga memberikan pemisah alami di antara kata-kata.
  • Lebih mudah dikelola. Hierarki nama kunci mewakili grup logis data konfigurasi.
  • Lebih mudah digunakan. Lebih mudah untuk menulis kueri yang cocok dengan pola kunci dalam struktur hierarkis dan hanya mengambil sebagian dari data konfigurasi. Selain itu, banyak kerangka pemrograman yang lebih baru memiliki dukungan asli untuk data konfigurasi hierarkis sehingga aplikasi Anda dapat menggunakan set konfigurasi tertentu.

Anda dapat mengatur kunci di App Configuration secara hierarkis dalam banyak cara. Pikirkan kunci seperti URI. Setiap kunci hierarki adalah jalur sumber daya yang terdiri dari satu atau beberapa komponen yang disatukan oleh pemisah. Pilih karakter apa yang akan digunakan sebagai pemisah berdasarkan apa yang dibutuhkan aplikasi, bahasa pemrograman, atau kerangka kerja Anda. Gunakan beberapa pemisah untuk kunci yang berbeda di App Configuration.

Kunci label

Kunci-nilai dalam App Configuration dapat secara opsional memiliki atribut label. Label digunakan untuk membedakan kunci-nilai dengan kunci yang sama. Kunci app1 dengan label A dan B membentuk dua kunci terpisah di penyimpanan App Configuration. Secara default, kunci-nilai tidak memiliki label. Untuk secara eksplisit mereferensikan kunci-nilai tanpa label, gunakan \0 (URL yang dikodekan sebagai %00).

Label menyediakan cara yang mudah untuk membuat varian kunci. Penggunaan umum label adalah menentukan beberapa lingkungan untuk kunci yang sama:

    Key = AppName:DbEndpoint & Label = Test
    Key = AppName:DbEndpoint & Label = Staging
    Key = AppName:DbEndpoint & Label = Production

Kunci-nilai versi

Gunakan label sebagai cara untuk membuat beberapa versi kunci-nilai. Misalnya, Anda dapat memasukkan nomor versi aplikasi atau ID penerapan Git di label untuk mengidentifikasi kunci-nilai yang terkait dengan build perangkat lunak tertentu.

Catatan

Jika Anda mencari versi perubahan, App Configuration akan mempertahankan semua perubahan kunci-nilai yang terjadi di periode waktu tertentu sebelumnya secara otomatis. Untuk informasi selengkapnya, lihat snapshot point-in-time.

Kunci-nilai kueri

Setiap kunci-nilai secara unik diidentifikasi oleh kunci tersebut ditambah label yang dapat berupa \0. Anda meminta penyimpanan App Configuration untuk kunci-nilai dengan menentukan pola. Penyimpanan App Configuration mengembalikan semua kunci-nilai yang cocok dengan pola termasuk nilai dan atribut terkait. Gunakan pola kunci berikut dalam panggilan REST API ke App Configuration:

Kunci Deskripsi
key dihilangkan atau key=* Cocokkan semua kunci.
key=abc Sama persis dengan nama abc kunci.
key=abc* Cocok dengan nama kunci yang dimulai dengan abc.
key=abc,xyz Cocok dengan nama abc kunci atau xyz. Terbatas untuk lima CSV.

Anda juga dapat menyertakan pola label berikut:

Label Deskripsi
label dihilangkan atau label=* Cocokkan label apa pun, yang mencakup \0.
label=%00 Cocokkan label \0.
label=1.0.0 Sama persis dengan label 1.0.0 .
label=1.0.* Cocok dengan label yang dimulai dengan 1.0..
label=%00,1.0.0 Cocok dengan label \0 atau 1.0.0, terbatas pada lima CSV.

Catatan

*, ,, dan \ karakter khusus dalam kueri. Jika karakter khusus digunakan dalam nama kunci atau label Anda, Anda harus menghindarinya dengan menggunakan \{Reserved Character} dalam kueri.

Nilai

Nilai yang ditetapkan terhadap kunci juga merupakan string unicode. Anda dapat menggunakan semua karakter unicode untuk nilai.

Menggunakan jenis konten

Setiap kunci-nilai dalam App Configuration memiliki atribut jenis konten. Anda dapat secara opsional menggunakan atribut ini untuk menyimpan informasi tentang jenis nilai dalam kunci-nilai yang membantu aplikasi Anda memprosesnya dengan benar. Anda dapat menggunakan format apa pun untuk jenis konten. App Configuration menggunakan Jenis Media (juga dikenal sebagai jenis MIME) untuk jenis data bawaan seperti bendera fitur, referensi Key Vault, dan kunci-nilai JSON.

Langkah berikutnya