2017-08-24 15 views
0

私はスタンドアロンアプリケーション(C#ではナンシースタンドアロンホストアプリケーション)を持っています。これはサービスファブリック用にパックする必要があります。アプリケーションはフロントエンドベースのアプリケーションであり、複数のインスタンスが存在します。各インスタンスは、残りのインスタンスと直接通信する必要があるため(残りのインスタンスは同じクラスタ内にあるため)残りのインスタンスを検出する必要があります。Azure - サービス間ノード通信

サービスファブリックAPIに頼らずに、これらのインスタンスに名前でアクセスできるようにする方法がありますか(DNSアプローチを使用するのが最善ですか?)

(私はどのようにネームサービス方法を発見したが、私は直接個々のサービスインスタンスにアクセスする方法がわからない)あなたが発見した後ステートレスサービスに話すことができ

答えて

1

DNS

そのエンドポイントアドレスは、DNS &ネーミングサービスを使用します。 (DNS serviceはDNS名をサービス名にマッピングします)あなたは話すインスタンスに影響を与えることはできません。あなたは何ができるか

を監視

サービスのエンドポイントの発見&はそれらを発見するアプリケーションでのサービス以上iterateです。たとえば、タイプ別。 monitor changesも確認してください。デプロイメント、クラッシュ、リソースバランシングのためにエンドポイントが移動する可能性があります。

すべてのインスタンスは、一意のセカンダリエンドポイント(たとえばhttp)を公開することができるため、個別にターゲティングすることができます。各ステートレスサービスインスタンスは、(自己開発)(ステートフル)レジストリサービスに自身を登録有することにより、サービス発見

代替。その後、このサービスに既知のインスタンスを問い合せることができます。

関連する問題