Spring Cloud 環境における Eureka サーバーとゲートウェイの実装ガイド

サービスレジストリ(Eureka)の構築 マイクロサービス群の状態を一元管理するレジストリノードを作成します。Maven プロジェクトを起点に、依存関係、ブートストラップクラス、設定ファイルを順に定義します。 1.1 依存関係の定義 pom.xml にレジストリ機能を提供するスターターを追加します。Spring Cloud Greenwich 系と Spring Boot 2.1.x をベースに構成しています。 ...

10月11日 16:08 投稿

Spring Cloud GatewayのWebFilterでSa-Tokenを使用する際の「SaTokenContext未初期化」エラーの解消方法

Spring Cloud Gateway(WebFlux基盤)の開発環境において、`GlobalFilter`内でSa-Tokenの認証APIを呼び出すと、ランタイム時に以下のような例外が発生することがあります。 // 問題が発生する実装例 @Component @Slf4j public class UserIdPropagator implements GlobalFilter { @Override public Mono<Void> filter(ServerWebExchange ctx, GatewayFilterCh ...

8月22日 01:50 投稿

Spring Cloud Gatewayにおけるサーキットブレーカー、レートリミット、リトライ機能

Spring Cloud Gatewayには、APIゲートウェイとして有用なフィルター群が標準装備されています。本稿では、特に重要な熔断(サーキットブレーカー)、限速(レートリミット)、リトライの3つの機能について解説します。 リクエストパス変換フィルター StripPrefixフィルターは、リクエストパスを指定したセグメント数分だけ削除する機能です。この機能を活用することで、 ...

7月1日 17:13 投稿

マイクロメータートレーシングとSpring Cloud Gatewayの実装

分散トレーシングの基礎と実装 マイクロサービス環境では、単一リクエストが複数サービスを経由するため、エンドツーエンドの可視化が不可欠です。Spring Cloud Sleuthはメンテナンスモードとなり、現在はMicrometer Tracingが標準ソリューションとして採用されています。 トレーシングの仕組み トレースIDとスパンIDでリクエスト経路を特定します。例として、order-servi ...

6月5日 18:10 投稿