ホームページ  >  記事  >  Java  >  Spring Boot を使用してマイクロサービス アーキテクチャでサービスの登録と検出を実装する

Spring Boot を使用してマイクロサービス アーキテクチャでサービスの登録と検出を実装する

PHPz
PHPzオリジナル
2023-06-22 09:05:381097ブラウズ

インターネットの急速な発展に伴い、マイクロサービス アーキテクチャは徐々に主流のアーキテクチャの 1 つになりつつあります。このアーキテクチャの利点は、大規模で複雑なアプリケーションを複数の小規模で独立したサービスに分割し、保守が容易になることです。導入と柔軟な拡張。マイクロサービス アーキテクチャでは、サービスの登録と検出が非常に重要です。この記事では、Spring Boot を使用してマイクロサービス アーキテクチャでサービスの登録と検出を実装する方法を紹介します。

1. サービスの登録

サービス登録とは、他のサービスがマイクロサービスを検出して呼び出せるように、マイクロサービスをサービス登録センターに登録することを指します。 Spring Boot では、Eureka をサービス登録センターとして使用できます。 Spring Boot と Eureka を介してサービス登録を実装する手順は次のとおりです。

  1. Eureka の依存関係を導入する

最初に、pom.xml ファイルに Eureka の依存関係を導入する必要があります。

<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
  1. 構成ファイルを作成します

次に、application.yml または application.properties ファイルで関連するプロパティを構成する必要があります。

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/

ここでのプロパティの意味は次のとおりです。

  • server.port: Eureka サービス登録センターのポート番号
  • spring.application.name: Eureka サービス登録の名前center、ここでは eureka-server に設定します
  • eureka .instance.hostname: サービス登録センターのホスト名。ここでは localhost に設定するか、IP アドレス
  • eureka に設定できます。 .client.registerWithEureka: このサービスを Eureka サービス登録センターに登録するかどうか。ここでは false に設定し、登録しないことを示します。
  • eureka.client.fetchRegistry: Eureka サービス登録センターのサービスを取得するかどうか。ここでは false に設定し、サービスを取得しないことを示します
  • eureka.client.serviceUrl.defaultZone: Eureka サービス登録 センターのアドレス。ここでは http://${eureka.instance.hostname} に設定します。 ${server.port}/eureka/
  1. @EnableEurekaServer アノテーションを追加します

最後に、@EnableEurekaServer アノテーションを Spring Boot スタートアップ クラスに追加して有効にします。 Eureka サービス登録センター:

@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApplication {
  public static void main(String[] args) {
    SpringApplication.run(EurekaServerApplication.class, args);
  }
}

これで、サービス登録センターの構築が完了しました。http://localhost:8761 Eureka サービス登録センターのコンソールからアクセスできます。

2. サービス ディスカバリ

サービス ディスカバリとは、マイクロサービス アーキテクチャにおいて、サービスがサービス登録センターのアドレスと名前を通じて他のマイクロサービスを自動的に検出し、呼び出すことができることを意味します。サービス検出を実装するには、Spring Boot で Eureka クライアントを使用できます。

  1. Eureka クライアントの依存関係の紹介

pom.xml ファイルに Eureka クライアントの依存関係を導入することも必要です。

<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
  1. 構成ファイル

次に、application.yml または application.properties ファイルで関連するプロパティを構成する必要があります:

server:
  port: 8080

spring:
  application:
    name: demo-service

eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/

ここでのプロパティの意味は次のとおりです:

  • server.port : サービスのポート番号
  • spring.application.name: サービス登録の名前。Eureka サービス登録センターでサービスを見つけるために使用されます
  • eureka.client.serviceUrl.defaultZone: Eureka サービス 登録センターのアドレス。ここでは http://localhost:8761/eureka/
  1. @EnableDiscoveryClient アノテーションを追加します。

最後に、Spring Boot クラスを開始します。 @EnableDiscoveryClient アノテーションを追加して、Eureka クライアントを有効にします。

@EnableDiscoveryClient
@SpringBootApplication
public class DemoServiceApplication {
  public static void main(String[] args) {
    SpringApplication.run(DemoServiceApplication.class, args);
  }
}

これで、Spring Boot と Eureka を使用したサービスの登録と検出の実装が完了しました。マイクロサービスアーキテクチャ。

概要

この記事では、Spring Boot と Eureka を使用して、マイクロサービス アーキテクチャでサービスの登録と検出を実装する方法を紹介します。サービスの登録と検出はマイクロサービス アーキテクチャにおいて非常に重要であり、Eureka はサービスの登録と検出を簡単かつ便利に実現できるため、さまざまなマイクロサービスが迅速に呼び出して相互作用できるようになります。

以上がSpring Boot を使用してマイクロサービス アーキテクチャでサービスの登録と検出を実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。