2016-08-23 6 views
0

いくつかのサイロが何らかの理由で応答しない(サーバーがダウンしているなど)場合、Grain Fail-Overの動作をテストしています。現在、我々は2つのサイロを2つの異なるマシン上で実行しており、それぞれにグレインをアクティブにしています。次に、サイロの1つを殺すように進んでいます(予期せず)。私たちはDEADサイロで穀物を呼びそそうとしていますが、タイムアウトしてから(合計3分だと思います)、サイロが接続を拒否しているという例外がスローされます。さて、サイロがDEADと宣言された後、我々は活性化を再試行すると、他のサイロでのみ穀物が活性化されると考えています。これは私たちのためにうまくいきます。しかし、ロジックを自分で行うのではなく、自動的に再試行する方法があるかどうかを知りたいと思っています。自動Microsoft Orleansの穀粒フェールオーバーで再試行

答えて

2

まず、3分はあまりにも多く聞こえます。デフォルトのライブ設定を使用している場合は、数十秒かかるはずです。どのシステムストアですか?

自動的に再試行したい場合は、すべてのクライアントグレインコールをラッパーでラップして、指数関数的なバックオフなどで再試行します。再試行を自分で行うことで、より多くの制御と再試行と方法が得られます。

+0

うん、そうだね。私たちはあなたがそれを自動的に有効にすることができる他の場所を読んだことがありますが、それは '一回限り'の配送と矛盾するようです。だから私はそれがクライアントによって行われるべきであることに同意する傾向があります。 – Jonny

関連する問題