記事ディレクトリ
I.はじめに
これまでに、マイクロサービスゲートウェイシリーズの記事が公開されています。
- [クラウドネイティブとマイクロサービス>SCGゲートウェイパート1]ゲートウェイがある理由と本番環境でゲートウェイを選択する方法
- クラウドネイティブとマイクロサービス>SCGゲートウェイパート2]本番環境でのこれらのグレースケールリリース方法
- [クラウドネイティブとマイクロサービス>SCGゲートウェイパート3]SpringCloudGatewayとは何ですか?詳細なユースケース
- クラウドネイティブとマイクロサービス>SCGゲートウェイパート4]SpringCloudGatewayで11の組み込みPredicateFactoryを使用する方法
- [クラウドネイティブとマイクロサービス>SCGゲートウェイパート5]SpringCloudGatewayカスタムPredicateFactory
- [クラウドネイティブとマイクロサービス>SCGゲートウェイ第6章]SpringCloudGatewayに組み込まれた18のフィルター使用姿勢
- [クラウドネイティブとマイクロサービス>SCGゲートウェイ第7章]SpringCloud Gatewayは、組み込みのフィルターに基づいて、現在の制限、融合、および再試行を実装します
- [クラウドネイティブとマイクロサービス>SCGゲートウェイ第8章]SpringCloudGatewayフィルターとGlobalFilterをカスタマイズする3つの方法
- [クラウドネイティブとマイクロサービス>SCGゲートウェイ第9章]Nacosを統合したSpringCloudGatewayの詳細なケース
次の問題について話し合いました。
- なぜゲートウェイがあるのですか?ゲートウェイの役割は何ですか?
- ゲートウェイの分類?
- ゲートウェイテクノロジーの選択?
- ゲートウェイを使用するときに一般的に使用されるグレースケール公開方法は何ですか?
- Spring Cloud Gatewayとは何ですか?詳細なユースケース?
- SpringCloudGatewayに組み込まれた11種類のPredicateFactory
- PredicateFactoryをカスタマイズする方法は?
- SpringCloudGatewayに組み込まれている18の一般的に使用されるフィルター
- Spring Cloud Gatewayは、組み込みのフィルターに基づいて、現在の制限、融合、および再試行を実装します
- SpringCloudGatewayでFilterとGlobalFilterをカスタマイズする3つの方法
- 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を統合して電流制限を実現します。次に、ソースコード分析の記事を入力し、ゲートウェイの原理を分析します。