Spring Cloudモジュールの相互呼び出し方法は?
Spring Cloud上でマイクロサービスが相互に通信する方法
- モジュール間の通信はHTTPプロトコル経由であり、リクエストとレスポンスにはRESTfulスタイルのAPIが用いられます。
- Feign:Feignとは、Spring Cloudが提供している宣言型HTTPクライアントで、モジュール間におけるHTTP呼び出しを簡略化します。インターフェース内にメソッドを定義することで、Feignは自動的にメソッド呼び出しをHTTPリクエストに変換します。
- リボン:リボンは、モジュール間でロードバランスされた HTTP 呼び出しを可能にするクライアント サイドの負荷分散コンポーネントです。
- ユーレカ: ユーレカは、モジュールをユーレカサーバーに登録し、モジュール間でのサービス発見および呼び出しを実現する、サービス登録および発見コンポーネントです。
- Kafkaは、モジュール間の非同期通信に使用できる分散型メッセージキューです。モジュールはKafkaにメッセージを送信することで、他のモジュールはそのメッセージを購読して受け取ることができます。
以上はSpring Cloudによく使われるモジュール間の呼び出し方法で、具体的な需要とシナリオに基づいて適正な手段を選ぶことができます。