スケーラブルな一連のマイクロサービスを展開したいと考えています。すべてのサービスは、RESTを介して互いに通信する必要があります。また、私は遅く不安定なサードパーティのサービスを要求する必要があります。 私はそれをイベント駆動型とし、apache kafkaを使用するというアイデアを考え出しました。RESTとKafkaを使用して非同期REST呼び出しの結果をクライアントにプッシュする方法
のような何か:
WebClient_X - 要求--->ロードバランサ - 前方 - > A-Service_1 - 要求---> ThirdPartyService
A_Service_1は結果のためThirdPartyServiceをポーリングする必要がありますカフカに書き込む。
A_Service_1 --->カフカ
今何ですか?
カフカのトピックに格納された結果を、要求しているWebClient_Xにどのように送り返すことが可能ですか? 覚えておいてください: - A-Serviceは、LBのN倍に展開されています。 - A-Service_1インスタンスがWebClientにResponse.created(uuid)を返しました。
WebClientをkafkaトピックを使用するようにするには解決策があります。しかし、これは愚かな考えであるようです。私は、次のアイデアを思い付いたたくさんそれについて考えた後