In diesem Artikel werden hauptsächlich Beispiele für die Registrierung und Entdeckung von SpringBoot-Diensten vorgestellt, die einen gewissen Referenzwert haben
Microservices
Natürliches Üben von „Microservices“. erfordert das Erlernen der Dienstregistrierung und -erkennung
Um auf SpringBoot basierende Microservices zu erlernen, ist es selbstverständlich, sich für SpringCloud zu entscheiden, das natürlich eng damit zusammenhängt Als Dubbo
können Sie Zookeeper auch zum Implementieren der Dienstregistrierung und -erkennung verwenden. Ob Zookeeper für die Implementierung dieser Funktion gut oder schlecht ist, hat jeder seine eigene Meinung
SpringCloud
Spring Cloud bietet Entwicklern Tools zum schnellen Erstellen einiger gängiger Muster in verteilten Systemen
SpringCloud umfasst die verteilte/versionierte Konfiguration / versionierte Konfiguration und viele weitere Unterprojekte.
Verteilte/versionierte Konfiguration
Dienstregistrierung und -erkennung
Routing
Service-zu-Service-Einsätze
Lastausgleich
Leistungsschalter
Globale Sperren
Führungswahl und Clusterstatus
Verteilte Nachrichtenübermittlung
Dienstregistrierung und -erkennung
SpringCloud-Modul
spring-cloud-starter-eureka-server
EngineeringModul
Service-Registrierungscenter
Service-Modul
Service-Registrierungscenter
Discovery-Modul erstellen und Spring-Cloud-Starter-Eureka-Server-Abhängigkeit in build.gradle einführen
apply plugin: 'org.springframework.boot' dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:"+ springCloudVersion } } repositories { mavenCentral() } dependencies { compile ('org.springframework.cloud:spring-cloud-starter-eureka-server') } jar { baseName = 'discovery-bootcwenao' }
Registrierungscenter-Service durch Annotation @EnableEurekaServer bereitstellen
/** * @author cwenao * @version $Id DiscoveryBootcwenaoApplication.java, v 0.1 2017-01-12 9:56 cwenao Exp $$ */ @EnableEurekaServer @SpringBootApplication public class DiscoveryBootcwenaoApplication { public static void main(String[] args) { new SpringApplicationBuilder(DiscoveryBootcwenaoApplication.class).web(true).run(args); } }
application.yml configure eurekaattributes
server: port: 8761 eureka: instance: hostname: discovery client: registerWithEureka: false fetchRegistry: false service-url: defaultZone: http://discovery:${server.port}/eureka/
Visit localhost:8761
Dienstregistrierung
Erstellen Sie ein Servicemodul und führen Sie spring-cloud-starter-eureka in build.gradle ein.
apply plugin: 'org.springframework.boot' dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:"+ springCloudVersion } } dependencies { compile('org.springframework.cloud:spring-cloud-starter-eureka') compile('org.springframework.cloud:spring-cloud-stream') } sourceSets { main { resources.srcDirs = ['src/main/resources', 'src/main/java'] resources.includes = ['**/*.xml', '**/*.yml'] } } jar { baseName = 'apigateway-bootcwenao' }
Registrieren Sie den Dienst, indem Sie @EnableDiscoveryClient mit Anmerkungen versehen
@SpringBootApplication @EnableDiscoveryClient public class ApiGatewayBootcwenaoApplication { public static void main(String[] args) { SpringApplication.run(ApiGatewayBootcwenaoApplication.class, args); } }
Anwendung .yml Eureka-Attribute konfigurieren
server: port: 10002 spring: application: name: apigateway eureka: client: registerWithEureka: true fetchRegistry: true serviceUrl: defaultZone: http://localhost:8761/eureka/
Nach Abschluss der Registrierung können Sie über die Konfiguration von spring.application.name auf den Dienst zugreifen
Besuchen Sie localhost:8761 und stellen Sie fest, dass der Dienst bereits verfügbar ist registriert Registrieren Sie sich im Center
Das Service-Registrierungscenter aktiviert Benutzernamen und Passwort
durch Konfigurieren des Benutzernamens und Passworts von applicationlicaiton.yml
security: basic: enabled: true user: name: aa password: abcd
Service Provider application.yml konfigurieren
eureka: instance: hostname: configserver prefer-ip-address: true client: registerWithEureka: true fetchRegistry: true service-url: defaultZone: http://aa:abcd@localhost:8761/eureka/
[Verwandte Empfehlungen]
1. Java kostenlos Video-Tutorial
3.Umfassende Analyse von Java-Annotationen
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung von Beispielen zur Dienstregistrierung und Entdeckung von „Microservices“. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!