私のサービスの1つが、外部サービスからコールバックを受け取るWCFホストを公開するシナリオがあります。ファブリックサービスの開始時の利用可能性
これらのホストは動的に作成され、数百もあります。ノードが要求を受信して失敗を受け取らないようにするには、ノードがすべて稼動していることを確認する必要があります。これは重要です。
準備が整うまでサービスがリクエストを受け取らないようにする方法はありますか?クラウドサービスでは、このコードをOnStartメソッド内にすべて含めることでこれを実行できます。
最初に考えたのは、コミュニケーションリスナーを開く前にブートストラップすることができるということです。ファブリックマネージャーはこれが完了した後にのみ要求を送信することを期待していますが、生涯が処理されます。
ありがとうヴァーツラフを: 私たちのマニュアルをAzureのロードバランサに関するいくつかの情報を追加しましたが、このことができます願っています。 OpenAsyncを呼び出す前に私のサービスホストを開くと、ネームサービスでは発見できないため、azureから自動的にトラフィックは受信されません。それとも間違っていますか?もしそうでなければ、私はロードバランサ機能をチェックアウトする必要があります。 –
いいえ、Azure Load Balancerは、サービスファブリック、ネーミングサービス、またはアプリケーションレイヤーについては認識していませんが、VMについてのみ認識しています。 Azureでクラスタを設定するときは、ロードバランサを介して公開するクラスタVMのポートである「カスタムエンドポイント」を指定します。これはすべてのロードバランサが知っているものです。プローブルールを追加しない限り、VMが特定のポートでトラフィックを受け入れることができるかどうかをテストするためにロードバランサが使用しますが、これもすべてVMレベルです。 –
Vaclavに感謝します。それはそれをクリアします(そしてガイドのおかげで)。私が心配しているのは、VMのポートを開いて、プローブが準備が整う前にプローブがトラフィックをダイレクトするように制御していないからです。おそらくこれを処理する方法を理解しようとしています - おそらく何かを再構築する必要があります。 –