1. Einführung
Wenn Sie ein Konfigurationszentrum in einer Produktionsumgebung wie der Serviceregistrierung bereitstellen möchten, möchten wir auch, dass es eine hoch verfügbare Anwendung ist. Die Spring Cloud -Konfiguration ist sehr einfach, um eine hohe Verfügbarkeit auf der Serverseite zu implementieren, und es gibt hauptsächlich zwei Möglichkeiten, dies zu tun.
Traditioneller Modus: Für diese Server müssen keine zusätzliche Konfiguration vorgenommen werden. Sie müssen nur eine Konfigurationsregel einhalten und alle Konfigurationsserver auf das gleiche Git -Repository richten, damit alle Konfigurationsinhalte über ein einheitliches freigegebenes Dateisystem verwaltet werden. Wenn der Client den Speicherort des Konfigurationsservers angibt, muss er nur die Lastausgleichsgerätadresse der oberen Ebene des Konfigurationsservers konfigurieren. Dies ist die in der folgende Abbildung gezeigte Struktur.
Servicemodell: Zusätzlich zum obigen herkömmlichen Implementierungsmodell können wir den Konfigurationsserver als gewöhnliche Microservice -Anwendung in das Service Governance -System von Eureka einbeziehen. Auf diese Weise können unsere Microservice -Anwendungen Konfigurationsinformationen über den Servicenamen des Konfigurationszentrums abrufen. Diese Methode ist der Wartung förderlicher als das herkömmliche Implementierungsmodell, da die Lastausgleichskonfiguration des Servers und die Konfigurationszentrumspezifikation des Clients über den Service-Governance-Mechanismus gelöst werden, der nicht nur eine hohe Verfügbarkeit erreicht, sondern auch die Selbstverständlichkeit realisiert. Da die Implementierung dieses Teils die Zusammenarbeit des Clients erfordert, können Leser bestimmter Beispiele im Abschnitt "Service Configuration Center" im Abschnitt "Client -Erklärung" ausführlich lesen.
2. Vorbereitung
Ein Service Registration Center, Eurekaserver, Port 5555;
3.. Config-Server transformieren
(1) pom.xml, fügen Sie Spring-Cloud-Starter-Eureka-Abhängigkeit hinzu
<Depelencies> <De vorstellen> <gruppe> org.springFramework <gruppe> org.springframework.boot </Groupid> <artifactid> Spring-Boot-Starter-Test </artifactId> <Scope> test </scope> </abhängig> </Abhängigkeiten>
(2) application.yml, konfigurieren Sie die Parameter eureka.client.serviceurl.Defaultzone, um den Speicherort des Service -Registrierungszentrums anzugeben
Server: Port: 5588 Spring: Anwendung: Name: config-server eureka: client: serviceurl: defaultZone: http: // localhost: 5555/eureka/#configure service Registration cloud: config: server: server: git: uri: uri: https://gitee.com/smartdt/springcloudConfigdt/smartdt/Springcloudconfig. Repository. SearchPaths: config-Repo #Configure Der relative Suchort unter dem Repository-Pfad und Sie können mehrere konfigurieren. Benutzername: Benutzername #UserName, um auf das Git -Repository zuzugreifen. Passwort: Passwort #User Passwort zum Zugriff auf das Git -Repository. Etikett: Master #Configure Die Zweigstelle des Repository ### Wenn das Git -Repository ein öffentliches Repository ist, können Sie den Benutzernamen und das Kennwort nicht ausfüllen. Wenn es sich um ein privates Repository handelt, müssen Sie es ausfüllen.
(3) Eingabetokument, fügen Sie die @enablediscoveryc Giant-Ent-Annotation hinzu, um den oben konfigurierten Konfigurations-Server zu dem oben konfigurierten Service-Registrierungszentrum zu registrieren.
@Enablediscoveryclient @enableConfigServer @springbootApplication Public Class SpringCloudConfigServerApplication {public static void main (String [] args) {SpringApplication.run (SpringCloudConfigServerApplication.class, args); }}(4) Start Config-Server und View über Eureka-Server
4. Renovate Config-Client
(1) pom.xml, fügen Sie Spring-Cloud-Starter-Eureka-Abhängigkeit hinzu
<Depelencies> <Deponcy> <gruppe> org.springframework <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
(2) Bootstrap.Properties, Informationen zum Konfigurationsdienst hinzufügen
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.defaultsurl.
(3) Eintragsklasse, add @enablediscoveryClient hinzufügen
@EnablediscoveryClient @springbootApplication Public Class SpringCloudConfigClientApplication {public static void main (String [] args) {SpringApplication.run (SpringCloudConFigClientApplication.class, args); }}(4) Die Testklasse bleibt unverändert
@ReFreshScope @restController public class configController {@Value ("$ {from}") private String von; @Value ("$ {Benutzername}") privater String -Benutzername; @Value ("$ {Passwort}") privates Zeichenfolgenkennwort; @RequestMapping ("/from") public String von () {return this.from + "~ user:" + this.username + "~ pass:" + this.password; }}(5) Starten Sie den Test und betrachten Sie ihn über Eureka-Server
(6) Browser -Tests finden Sie unter http: // localhost: 5589/von
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.