3

私の Azure ロールでは、現在のインスタンス数をいつでも照会できる必要があります。

内部エンドポイントがないため、 Role.Instancesを使用できません。Management API を使用できますが、比較的時間がかかり、クエリを実行するとプロトコル タイムアウト エラーが発生することがあるため、タイムアウトに対処したくありません。

どのロールがインスタンス数を変更するかを反映するクラス オブジェクトを含むことができるRoleEnvironment.Changingイベントがあるようです。RoleEnvironmentTopologyChangeこれは私にとって最適です-外部呼び出しを行う必要はなく、変更時に新しいインスタンス数を保存するだけなので、オーバーヘッドもタイムアウトもありません. しかし、起動時に新しいインスタンス数を見つけることができるかどうかはわかりませんRoleEnvironment.Changing

RoleEnvironment.ChangingAzure でのみまたは類似のイベントを使用して、ロール インスタンス数と実際のインスタンス数の変化を検出することは可能ですか?

4

1 に答える 1

2

はい、そのイベント ハンドラ内で、RoleEnvironment.Roles を使用してロールのリストを取得できます。次に、役割ごとに、Instances プロパティを使用して、その役割が持つインスタンスの数を確認できます。管理 API を使用する必要はありません。変更を検出するには、インスタンスの起動時にインスタンス数をクエリし、データをメモリに保存して、後で比較できるようにします。

よろしくお願いします、

明徐。

于 2012-07-19T14:37:13.750 に答える