Topik ini menjelaskan cara mengintegrasikan pusat konfigurasi MSE Nacos dengan aplikasi Spring Cloud Anda untuk manajemen konfigurasi terpusat dan penyegaran dinamis.
Informasi latar belakang
Dalam arsitektur layanan mikro, mengelola konfigurasi melalui nilai yang di-hardcode atau file statis sangat sulit, terutama saat jumlah layanan mikro dan lingkungan semakin bertambah. Pendekatan ini sering menyebabkan ketidakkonsistenan konfigurasi serta keterlambatan pembaruan. Pusat konfigurasi mengatasi masalah tersebut dengan menyediakan tempat terpusat untuk menyimpan, mengelola, dan memperbarui data konfigurasi secara dinamis. Hal ini menjamin isolasi konfigurasi dan sinkronisasi antar berbagai lingkungan dan instans, sekaligus meningkatkan fleksibilitas serta keamanan dalam pembaruan konfigurasi.
Prasyarat
-
Unduh Maven dan siapkan variabel lingkungan yang diperlukan.
-
Aplikasi Spring Cloud yang sudah ada. Jika belum memiliki, Anda dapat menggunakan aplikasi demo yang disediakan dalam topik ini: nacos-service-config.zip.
-
Penting
Jika aplikasi Anda tidak berada di wilayah yang sama dengan MSE Nacos atau tidak berjalan di server Alibaba Cloud, pilih jaringan publik saat membuat engine Nacos.
Untuk memastikan aplikasi Anda dapat mengakses MSE melalui jaringan publik, konfigurasikan daftar putih. Untuk informasi selengkapnya, lihat Setel daftar putih.
Ikhtisar
Dengan mengintegrasikan pusat konfigurasi MSE Nacos ke aplikasi Spring Cloud, Anda dapat mencoba fitur penyegaran dinamisnya dengan memublikasikan parameter konfigurasi useLocalCache=true, memperbaruinya menjadi useLocalCache=false di Konsol MSE Nacos, lalu meminta API konfigurasi aplikasi dari command line untuk mengambil nilai useLocalCache dan mengamati perubahannya.
-
Buat dan publikasikan konfigurasi: Tentukan dan publikasikan pengaturan konfigurasi awal di Konsol MSE.
-
Integrasikan MSE Nacos: Tambahkan dependensi dan properti yang diperlukan untuk menghubungkan aplikasi Spring Cloud Anda ke pusat konfigurasi MSE Nacos.
-
Verifikasi penyegaran dinamis: Ubah konfigurasi di Konsol dan pastikan aplikasi menerapkan perubahan tersebut tanpa perlu restart.
Langkah 1: Buat dan publikasikan konfigurasi
-
Masuk ke Konsol MSE dan pilih wilayah di bilah navigasi atas.
-
Klik nama instans target.
-
Di panel navigasi kiri, pilih .
-
Di atas daftar konfigurasi, pilih namespace yang telah Anda buat.
-
Klik Add Configuration. Di panel Add Configuration, masukkan informasi berikut:
CatatanTopik ini hanya menyediakan contoh konfigurasi sebagai referensi. Anda dapat membuat konfigurasi sesuai kebutuhan bisnis Anda. Untuk informasi lebih lanjut tentang parameter tersebut, lihat Buat konfigurasi.
Atur Data ID menjadi
mse-nacos-config-client.propertiesdan Group menjadiDEFAULT_GROUP. Untuk Configuration Format, pilih Properties. Di bidang Configuration Content, masukkanuseLocalCache=true, lalu klik Publish.
-
Setelah memasukkan detail konfigurasi, klik Publish. Konfigurasi baru akan muncul di daftar Configurations.
Langkah 2: Integrasikan MSE Nacos
-
(Opsional) Jika belum membuat aplikasi Spring Cloud, Anda dapat menggunakan contoh ini untuk menyiapkan aplikasi sederhana dengan cepat.
-
Tambahkan dependensi untuk pusat konfigurasi Nacos ke file
pom.xmlaplikasi Spring Cloud Anda:CatatanVersi
Spring Cloud Alibaba,Spring Cloud, danSpringBootharus kompatibel. Periksa catatan rilis versi di situs resmiSpring Cloud Alibabauntuk memilih versi yang kompatibel bagi aplikasi Anda. Disarankan untuk melakukan upgrade ke versi terbaru2023.x.<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2021.0.4.0</version> </dependency> -
Tambahkan pengaturan terkait Nacos ke file konfigurasi aplikasi Spring Cloud Anda:
PentingUntuk menggunakan namespace tertentu di aplikasi Anda, berikan ID-nya.
# Titik akhir publik server Nacos Anda. spring.cloud.nacos.config.server-addr=mse-XXX.nacos-ans.mse.aliyuncs.com:8848 # Tentukan namespace MSE Nacos. Untuk mengakses namespace publik default, biarkan kosong atau jangan konfigurasi item ini. spring.cloud.nacos.config.namespace=24075300-XXXX-XXXX-XXXX-0c17aa9f744b # Impor file konfigurasi tertentu. spring.config.import=nacos:mse-nacos-config-client.properties?group=DEFAULT_GROUP&refreshEnabled=trueDi halaman Instances, Anda dapat menemukan titik akhir publik MSE Nacos. Formatnya adalah
mse.XX.nacos.mse.aliyuncs.com. -
Setelah melakukan perubahan, jalankan perintah
mvn clean packageuntuk mengompilasi ulang dan membuat paket aplikasi.
Langkah 3: Verifikasi penyegaran dinamis
Langkah verifikasi berikut didasarkan pada contoh aplikasi Spring Cloud dan konfigurasi yang disediakan dalam topik ini. Jika Anda menggunakan aplikasi sendiri atau konfigurasi khusus, Anda mungkin perlu menyesuaikan langkah-langkah ini.
-
Jalankan aplikasi Spring Cloud dengan menjalankan fungsi utama di kelas startup.
-
Di terminal Anda, jalankan perintah berikut untuk mendapatkan konfigurasi
useLocalCachedari pusat konfigurasi MSE Nacos. Responsnya adalahtrue.# Ganti dengan alamat IP dan port layanan Anda. curl http://<your-service-ip>:18083/getConfig -
Di Konsol, edit konfigurasi, ubah isinya menjadi
useLocalCache=false, lalu publikasikan kembali. -
Jalankan perintah tersebut lagi. Responsnya sekarang adalah
false. Hal ini mengonfirmasi bahwa aplikasi telah mengambil datauseLocalCacheterbaru dari MSE Nacos tanpa perlu restart.
Dokumen terkait
-
Jika ingin melakukan migrasi dari pusat konfigurasi Nacos open source yang dikelola sendiri ke pusat konfigurasi MSE Nacos, lihat Migrasikan pusat konfigurasi Nacos yang dikelola sendiri ke MSE Nacos.
-
Untuk mempelajari registrasi dan penemuan layanan, lihat Integrasikan MSE Nacos sebagai registri dalam aplikasi Spring Cloud.
-
Jika ingin menggabungkan kemampuan gateway trafik dan gateway layanan mikro, lihat Buat gateway cloud-native MSE.
-
Untuk mempelajari fitur tata kelola layanan dan perlindungan trafik yang memisahkan middleware dari bisnis Anda, lihat Aktifkan Tata Kelola Layanan Mikro.
-
Untuk mempelajari solusi koordinasi terdistribusi guna meningkatkan ketersediaan tinggi sistem, lihat Penjadwalan Tugas.