1. Pendahuluan
Ketika Anda ingin menggunakan pusat konfigurasi ke lingkungan produksi, seperti Registry Layanan, kami juga ingin menjadi aplikasi yang sangat tersedia. Konfigurasi Spring Cloud sangat mudah untuk menerapkan ketersediaan tinggi di sisi server, dan terutama ada dua cara untuk melakukannya.
Mode Tradisional: Tidak perlu membuat konfigurasi tambahan untuk server ini. Anda hanya perlu mematuhi satu aturan konfigurasi dan mengarahkan semua server konfigurasi ke repositori git yang sama, sehingga semua konten konfigurasi dipertahankan melalui sistem file bersama yang terpadu. Ketika klien menentukan lokasi server konfigurasi, ia hanya perlu mengkonfigurasi alamat perangkat penyeimbang beban dari lapisan atas server konfigurasi, yang merupakan struktur yang ditunjukkan pada gambar di bawah ini.
Model Layanan: Selain model implementasi tradisional di atas, kami juga dapat menggabungkan server konfigurasi sebagai aplikasi layanan mikro biasa ke dalam sistem tata kelola layanan Eureka. Dengan cara ini, aplikasi Microservice kami dapat memperoleh informasi konfigurasi melalui nama layanan dari pusat konfigurasi. Metode ini lebih kondusif untuk pemeliharaan daripada model implementasi tradisional, karena konfigurasi penyeimbangan beban server dan spesifikasi pusat konfigurasi klien diselesaikan melalui mekanisme tata kelola layanan, yang tidak hanya mencapai ketersediaan tinggi tetapi juga mewakili pemeliharaan sendiri. Karena implementasi bagian ini membutuhkan kerja sama klien, pembaca contoh spesifik dapat membaca bagian "Pusat Konfigurasi Layanan" di bagian "Penjelasan Klien" secara rinci.
2. Persiapan
Pusat Pendaftaran Layanan, Eurekaserver, Port 5555;
3. Transform Config-Server
(1) Pom.xml, tambahkan ketergantungan Spring-Cloud-Starter-Eureka
<Dependencies> <dependency> <GroupId> org.springframework.cloud </groupid> <t ArtifactId> Spring-cloud-config-server </arttifactid> </dependency> <sependency> <trotifD> org.springframework.cloud </groupid> <Artifactid> <croud-cloud-cloud-cloud-cloud-cloud-cloud.cloud </groupid> <Artifactid> Spring-coudency-coudency--storramework <GroupId> org.springframework.boot </groupid> <ArTifactId> spring-boot-starter-test </stifactid> <scope> test </seupope> </dependency> </dependencies>
(2) application.yml, konfigurasikan parameter eureka.client.serviceurl.defaultzone untuk menentukan lokasi pusat pendaftaran layanan
server: port: 5588 spring: application: name: config-server eureka: client: serviceUrl: defaultZone: http://localhost:5555/eureka/ #Configure service registration center cloud: config: server: git: uri: https://gitee.com/smartdt/springcloudconfig.git #Configure the location of the Git repository. SearchPaths: config-repo #configure Lokasi pencarian relatif di bawah jalur repositori, dan Anda dapat mengonfigurasi beberapa. Nama pengguna: Nama pengguna #UserName untuk mengakses repositori git. Kata Sandi: Kata Sandi #User Kata Sandi Untuk mengakses repositori git. Label: Master #configure cabang repositori ### Jika repositori git adalah repositori publik, Anda tidak dapat mengisi nama pengguna dan kata sandi. Jika itu adalah repositori pribadi, Anda harus mengisinya.
(3) Kelas Entri, tambahkan anotasi raksasa @EnableDiscoveryc untuk mendaftarkan server konfigurasi ke pusat pendaftaran layanan yang dikonfigurasi di atas.
@EnablEcoveryClient @EnableConfigServer @springbootApplication kelas publik springcloudConfigServerApplication {public static void main (string [] args) {springapplication.run (springcloudconfigserverapplication.class, args); }}(4) Mulai Config-Server dan Lihat melalui Eureka-Server
4. Renovasi config-klien
(1) Pom.xml, tambahkan ketergantungan Spring-Cloud-Starter-Eureka
<Dependencies> <dependency> <GroupId> org.springframework.cloud </proupid> <t ArtifactId> Spring-cloud-starter-config </t Artifactid> </dependency> <sependency> <trotifD> org.springframework.boot </groupid> <ArtifactId> <artfactid> SPRINGINGING-BOTORT. <GroupId> org.springframework.cloud </proupid> <ArtifactId> Spring-cloud-starter-eureka </arttifactid> </dependency> <sependency> <groupid> org.springframework.boot </groupid> <Artifactid> Spring-starter-tarter-test </art/groupid> <Artifactid> <artefactid> <artefactid> <artefactid> <artefactid> <artefactid> <cruppen-starter-tarter-tarter-testid </art/groupid> <ArtifactId> <artefactid> <artefactid> <artefactid> <artefactid> <artefactid> <artefactid> <cruppe-starter-tarter-tarter-testid </artopid>
(2) bootstrap.properties, tambahkan informasi pusat layanan konfigurasi
spring.application.name = configspace spring.cloud.config.label = master spring.cloud.config.profile = dev spring.cloud.config.uri = http: // localhost: 5588/server.port = 5589 eureka.client.serviceurl.defaultzone = 5589 Eurka.client.serviceurl.defaultzone
(3) kelas entri, tambahkan @enablediscoveryclient
@EnableDiscoveryClient @springbootApplication kelas publik SpringCloudConfigClientApplication {public static void main (string [] args) {springApplication.run (springcloudconfigclientApplication.class, args); }}(4) Kelas tes tetap tidak berubah
@Refreshscope @restcontroller kelas publik configController {@value ("$ {from}") string pribadi dari; @Value ("$ {username}") Private String username; @Value ("$ {password}") kata sandi string pribadi; @RequestMapping ("/from") Public String from () {return this.from + "~ user:" + this.userName + "~ pass:" + this.password; }}(5) Mulailah tes dan lihat melalui Eureka-Server
(6) Pengujian Browser, kunjungi http: // localhost: 5589/dari
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.