[クラウドネイティブとマイクロサービス>SCGゲートウェイ第10章]アクチュエータとZipkinを統合したSpringCloudゲートウェイの詳細なケース

I.はじめに

これまでに、マイクロサービスゲートウェイシリーズの記事が公開されています。

  1. [クラウドネイティブとマイクロサービス>SCGゲートウェイパート1]ゲートウェイがある理由と本番環境でゲートウェイを選択する方法
  2. クラウドネイティブとマイクロサービス>SCGゲートウェイパート2]本番環境でのこれらのグレースケールリリース方法
  3. [クラウドネイティブとマイクロサービス>SCGゲートウェイパート3]SpringCloudGatewayとは何ですか?詳細なユースケース
  4. クラウドネイティブとマイクロサービス>SCGゲートウェイパート4]SpringCloudGatewayで11の組み込みPredicateFactoryを使用する方法
  5. [クラウドネイティブとマイクロサービス>SCGゲートウェイパート5]SpringCloudGatewayカスタムPredicateFactory
  6. [クラウドネイティブとマイクロサービス>SCGゲートウェイ第6章]SpringCloudGatewayに組み込まれた18のフィルター使用姿勢
  7. [クラウドネイティブとマイクロサービス>SCGゲートウェイ第7章]SpringCloud Gatewayは、組み込みのフィルターに基づいて、現在の制限、融合、および再試行を実装します
  8. [クラウドネイティブとマイクロサービス>SCGゲートウェイ第8章]SpringCloudGatewayフィルターとGlobalFilterをカスタマイズする3つの方法
  9. [クラウドネイティブとマイクロサービス>SCGゲートウェイ第9章]Nacosを統合したSpringCloudGatewayの詳細なケース

次の問題について話し合いました。

  1. なぜゲートウェイがあるのですか?ゲートウェイの役割は何ですか?
  2. ゲートウェイの分類?
  3. ゲートウェイテクノロジーの選択?
  4. ゲートウェイを使用するときに一般的に使用されるグレースケール公開方法は何ですか?
  5. Spring Cloud Gatewayとは何ですか?詳細なユースケース?
  6. SpringCloudGatewayに組み込まれた11種類のPredicateFactory
  7. PredicateFactoryをカスタマイズする方法は?
  8. SpringCloudGatewayに組み込まれている18の一般的に使用されるフィルター
  9. Spring Cloud Gatewayは、組み込みのフィルターに基づいて、現在の制限、融合、および再試行を実装します
  10. SpringCloudGatewayでFilterとGlobalFilterをカスタマイズする3つの方法
  11. SpringCloudGateway統合Nacosケース

次に、この記事では、Spring Cloud Gatewayがアクチュエータを統合してサービスステータスを追跡し、zipkinを統合してサービスコールリンク情報を追跡する方法について説明します。

PS:SpringCloudのバージョン情報:

<properties>
    <spring-boot.version>2.4.2</spring-boot.version>
    <spring-cloud.version>2020.0.1</spring-cloud.version>
    <spring-cloud-alibaba.version>2021.1</spring-cloud-alibaba.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>${spring-boot.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!--整合spring cloud-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!--整合spring cloud alibaba-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>${spring-cloud-alibaba.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

2.統合アクチュエータ監視ゲートウェイ

次に、[Cloud Native&Microservices> SCG Gateway Chapter 9] Spring Cloud Gateway統合Nacosの詳細なケースで、運用を継続します。

ゲートウェイは、ゲートウェイインジケータフィルタ()を介してゲートウェイGatewayMetricsFilterのコールステータスを提供できます。

1>pomにspring-boot-starter-actuator依存関係を導入します。

<!--集成actuator-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2>application.ymlファイルで監視パスを指定します。

# 集成actuator,使用http://xxxx/actuator/metrics查看请求信息
management:
  endpoints:
    web:
      exposure:
        include: '*'
  endpoint:
    health:
      show-details: always

3> http://127.0.0.1:9999/actuator/metricsを使用して、リクエスト監視情報のすべてのカテゴリを表示します。

ここに画像の説明を挿入

4> http://127.0.0.1:9999/actuator/spring.cloud.gateway.requestsを使用して、ゲートウェイ関連のリクエスト監視情報を表示します。

ゲートウェイ関連の要求監視情報を表示する前に、ゲートウェイを1回要求する必要があります。

ここに画像の説明を挿入

3.Zipkinを統合します

1>pomにzipkinとsleuthの依存関係を導入します。

<!--集成zipkin, ZipKin中包含sleuth-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-sleuth-zipkin</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>

2> application.ymlでzipkinとsleuthの情報を設定します:

spring:
    # 集成zipkin
  zipkin:
    base-url: http://127.0.0.1:9411/
    # zipkin不注册到nacos
    discovery-client-enabled: false
  sleuth:
    sampler:
      # 抽样率。默认是0.1(10%),即丢弃90%的数据
      probability: 1.0

3>リクエストを呼び出した後、http://127.0.0.1:9411 / zipkin /にアクセスして、サービス呼び出しリンクをトレースします。

ここに画像の説明を挿入
リクエストごとSHOWに、右側のボタンをクリックして、特定のサービスコールリンク情報を表示できます。

ここに画像の説明を挿入

4.まとめ

この記事は純粋に実用的な記事であり、アクチュエータを統合してサービスステータスを監視し、SpringCloudGatewayでサービスコールリンクを追跡するためにzipkin/sleuthを統合する方法について説明しています。

後で2つの実用的な記事があります。ゲートウェイはクロスドメインの問題を解決し、ゲートウェイはSentinelを統合して電流制限を実現します。次に、ソースコード分析の記事を入力し、ゲートウェイの原理を分析します。

おすすめ

転載: blog.csdn.net/Saintmm/article/details/125834960