Cet article présente principalement des exemples d'enregistrement et de découverte de services SpringBoot, qui ont une certaine valeur de référence. Les amis intéressés peuvent s'y référer
Microservices
Pratiquer les « microservices » naturellement. nécessite d'apprendre à effectuer l'enregistrement et la découverte de services
Pour apprendre les microservices basés sur SpringBoot, il est naturel de choisir SpringCloud, qui lui est étroitement lié, bien sûr, vous pouvez choisir d'autres technologies, telles que. en tant que dubbo
, vous pouvez également utiliser zookeeper pour implémenter l'enregistrement et la découverte du service Quant à savoir si zookeeper est bon ou mauvais pour implémenter cette fonction, chacun a sa propre opinion
SpringCloud
Spring Cloud fournit des outils permettant aux développeurs de créer rapidement certains des modèles courants dans les systèmes distribuésInscription et découverte des services
Module SpringCloudspring-cloud-starter-eureka-serverCentre d'enregistrement des services
Créer un module de découverte et introduire la dépendance spring-cloud-starter-eureka-server dans build.gradleapply 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' }
/** * @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); } }
server: port: 8761 eureka: instance: hostname: discovery client: registerWithEureka: false fetchRegistry: false service-url: defaultZone: http://discovery:${server.port}/eureka/
Enregistrement du service
Créez un module de service et introduisez spring-cloud-starter-eureka dans build.gradleapply 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' }
@SpringBootApplication @EnableDiscoveryClient public class ApiGatewayBootcwenaoApplication { public static void main(String[] args) { SpringApplication.run(ApiGatewayBootcwenaoApplication.class, args); } }
server: port: 10002 spring: application: name: apigateway eureka: client: registerWithEureka: true fetchRegistry: true serviceUrl: defaultZone: http://localhost:8761/eureka/
Le centre d'enregistrement du service permet le nom d'utilisateur et le mot de passe
en configurant le nom d'utilisateur et le mot de passe applicaiton.ymlsecurity: basic: enabled: true user: name: aa password: abcd
eureka: instance: hostname: configserver prefer-ip-address: true client: registerWithEureka: true fetchRegistry: true service-url: defaultZone: http://aa:abcd@localhost:8761/eureka/
Analyse complète des annotations Java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!