Maison >Java >javaDidacticiel >Utiliser Spring Boot pour implémenter l'enregistrement et la découverte de services sous une architecture de microservices

Utiliser Spring Boot pour implémenter l'enregistrement et la découverte de services sous une architecture de microservices

PHPz
PHPzoriginal
2023-06-22 09:05:381109parcourir

Avec le développement rapide d'Internet, l'architecture des microservices devient progressivement l'une des architectures dominantes. L'avantage de cette architecture est de diviser une application volumineuse et complexe en plusieurs petits services indépendants, qui peuvent être facilement maintenus et rapidement déployés et flexibles. expansion. Dans l'architecture des microservices, l'enregistrement et la découverte des services constituent un élément très important. Cet article explique comment utiliser Spring Boot pour implémenter l'enregistrement et la découverte des services dans l'architecture des microservices.

1. Enregistrement du service

L'enregistrement du service fait référence à l'enregistrement d'un microservice auprès du centre d'enregistrement du service afin que d'autres services puissent le découvrir et l'appeler. Dans Spring Boot, vous pouvez utiliser Eureka comme centre d'enregistrement des services. Voici les étapes pour implémenter l'enregistrement du service via Spring Boot et Eureka :

  1. Introduire les dépendances Eureka

Vous devez d'abord introduire les dépendances Eureka dans le pom. Configurer les propriétés associées dans le fichier yml ou application.properties :

<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
    . La signification des propriétés ici est la suivante :
server.port : Le numéro de port du centre d'enregistrement du service Eureka

spring.application.name : Le nom du centre d'enregistrement du service Eureka, ici défini sur eureka-server

eureka.instance.hostname : Le nom d'hôte du centre d'enregistrement du service, ici il est défini sur localhost, ou il peut être défini sur l'adresse IP
  • eureka.client.registerWithEureka : S'il faut enregistrer ce service à l'enregistrement du service Eureka center, défini sur false ici, ce qui signifie ne pas s'inscrire.
  • eureka.client.fetchRegistry : s'il faut obtenir le service du centre d'enregistrement du service Eureka, ce qui signifie ne pas obtenir
  • eureka.client. serviceUrl.defaultZone : l'adresse du centre d'enregistrement du service Eureka. Elle est définie sur http://${eureka.instance.hostname}:${server.port}/eureka/
  • Ajoutez l'annotation @EnableEurekaServer
  • .
  • Enfin, ajoutez l'annotation @EnableEurekaServer sur la classe de démarrage Spring Boot pour activer le centre d'enregistrement du service Eureka :
server:
  port: 8761

spring:
  application:
    name: eureka-server

eureka:
  instance:
    hostname: localhost
  client:
    registerWithEureka: false
    fetchRegistry: false
    serviceUrl:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
    Cela termine la construction du centre d'enregistrement du service. Vous pouvez accéder à la console du centre d'enregistrement du service Eureka via http://. hôte local : 8761.
  1. 2. Découverte de services

La découverte de services signifie que dans l'architecture des microservices, les services peuvent automatiquement découvrir et appeler d'autres microservices via l'adresse et le nom du centre d'enregistrement des services. Pour implémenter la découverte de services, vous pouvez utiliser le client Eureka dans Spring Boot.

Présentation des dépendances du client Eureka

Il est également nécessaire d'introduire les dépendances du client Eureka dans le pom :

@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApplication {
  public static void main(String[] args) {
    SpringApplication.run(EurekaServerApplication.class, args);
  }
}
    La signification des attributs ici est la suivante :
server.port : Numéro de port du service

spring. .application.name : Le nom de l'enregistrement du service, qui sera utilisé dans le centre d'enregistrement du service Eureka pour trouver le service
  1. eureka client.serviceUrl.defaultZone : L'adresse du centre d'enregistrement du service Eureka, définie ici sur http : //localhost:8761/eureka/

Ajoutez l'annotation @EnableDiscoveryClient

    Enfin, ajoutez l'annotation @EnableDiscoveryClient sur la classe de démarrage Spring Boot, Activez le client Eureka :
  • <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
  • Cela termine l'utilisation de Spring Boot et Eureka pour mettre en œuvre l’enregistrement et la découverte des services dans le cadre de l’architecture des microservices.
  • Résumé
  • Cet article explique comment utiliser Spring Boot et Eureka pour implémenter l'enregistrement et la découverte de services dans une architecture de microservices. L'enregistrement et la découverte des services sont très importants dans l'architecture des microservices. Eureka peut réaliser facilement et commodément l'enregistrement et la découverte des services, afin que différents microservices puissent rapidement s'appeler et interagir les uns avec les autres.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn