私のアプリケーション用にMicroservicesアーキテクチャを適用します。マイクロサービス間の内部通信は、Akkaを使用して実現されます。しかし、私はすべてのマイクロサービスをどのように認識し、相互に登録するかを知らない。マイクロサービス:Akkaを使用したサービスディスカバリとサービスレジストリ
1)Zookeeperを集中サービスとして使用して、すべてのマイクロサービス(ノード)のすべてのメタデータを保持し、これらのメタデータにアクセスして通信できるようにします。各ノードのメタデータには、他のノードと通信するためのAkkaパス(アドレス)情報が含まれています。
2)すべてのマイクロサービス(Akkaノード)をAkkaクラスタに参加させ、各ノードは互いに通信し合い参照します。 Akka Clusterはゴシッププロトコルをサポートしており、クラスタ内のすべてのノードが一緒に認識できるようにします。
誰でも私にこれに関するいくつかのアドバイスをいただけますか? Akkaの上でサービスディスカバリとサービスレジストリを効率的に設計する方法は?このためのオプションはありますか?
あなたは「マイクロサービス間の内部コミュニケーションはakkaを使用して達成されるでしょう」と書きました。これは、各サービスがakka httpを使用するか、akkaを介して直接通信することを意味しますか? –
私は彼らが(Kryoのシリアル化を使ってTCPを介して)お互いに直接通信することを意味します。サービスがレジストリから検出された後、各サービスはAkka – Barcelona