6

巨大なアプリケーションを Windows Azure に移植しています。これには、Web サービス フロントエンドと処理バックエンドがあります。これまでのところ、クライアント リクエストの処理には Web ロールを使用し、バックエンド処理にはワーカー ロールを使用すると考えていました。

2 種類の役割を管理するのは問題があるようです。2 種類の役割をどのようにスケーリングするかを決定する必要があります。また、適切なフォールト トレランスを確保するために、それぞれのインスタンスがいくつか (少なくとも 2 つ) 必要になるため、運用コストがわずかに増加します。また、私のアプリケーションでは、クライアント リクエストはかなり軽量で、バックエンド処理は重いので、バックエンド処理はクライアント リクエストを処理するよりもはるかに多くの処理能力を消費すると予想されます。

これが、私がすべてに Web ロールを使用することを考えている理由です。スレッドを生成し、各インスタンスでサービス要求とバックエンド処理の両方を行うだけです。これにより、役割はより複雑になりますが、管理は簡素化されると思います。統一された役割のインスタンスが増え、フォールト トレランスが向上します。

バックエンド処理に Web ロールを再利用することは良い考えですか? どのような欠点が予想されますか?

4

3 に答える 3

4

複数のロールを使用する際に何を考えるべきかについて、すでにかなり良いアイデアをお持ちのようですね。

  • SLA を満たすための 2 つのインスタンスのコスト (ただし、エンド ユーザーが影響を受けない場合、一部のバックグラウンド タスクでは実際に SLA は必要ありません)
  • 個別のスケール ユニット

ただし、すべてを 1 つのロールで実行すると、すべてが一緒にスケーリングされます。たとえば、ポート 8000 に管理 Web サイトがある場合、ユーザー ベースがポート 80 のメイン サイトにトラフィックを集中させていると、アクセスが困難になる可能性があります。

Web ロールとワーカー ロールの組み合わせについては、こちらのブログで説明しています。また、3 月のある時点で、ロールごとに 5 つのエンドポイントという制限が解除されました。現在エンドポイントをプッシュできる範囲については、こちらのブログ記事を参照してください。この制限の少ないエンドポイント モデルを持つことで、単一ロール展開の新しい可能性が開かれます。

于 2011-06-07T14:29:53.173 に答える
2

私が理解していることから、単一のレイヤーのみを処理する必要があるように、サービスレイヤーを統合することが理にかなっているのかどうかを尋ねています。高いレベルでは、それは理にかなっていると思います。単純であるほど良いのですが、単純すぎて主要な目的を達成できない場合は除きます。

主な目的がパフォーマンスであり、サービスへの呼び出しがインライン (呼び出し元が応答を待っていることを意味する) である場合、レイヤーを統合するとパフォーマンスが向上する可能性があります。追加の物理層の追加のネットワーク遅延。Task Parallel Library (TPL) を使用して、スレッド ロジックを実装できます。

主な目的がスケーラビリティであり、サービスへの呼び出しが帯域外 (呼び出し元がファイア アンド フォーゲット パターンを実装することを意味する) である場合は、処理キューとワーカー ロールを使用する方が理にかなっています。クラウド コンピューティングの原則の 1 つは、疎結合サービスです。メンテナンス作業が増えますが、レイヤーを個別に拡張する柔軟性も高まります。ワーカー ロールは上記の TPL を使用して、より大きな VM (4CPU または 8 など) にワーカー ロールをデプロイすることもできます。これにより、デプロイされるインスタンスの数を最小限に抑えることができます。

私の2セント。:)

于 2011-06-07T14:45:09.443 に答える
1

Web ロールと Worker ロールという別個のロールとして開発し、それらを 1 つの Web ロールに結合することをお勧めします。

このようにして、将来、必要に応じて、実際に分離された役割に簡単に変換できます。

詳細については: http://www.31a2ba2a-b718-11dc-8314-0800200c9a66.com/2010/12/how-to-combine-worker-and-web-role-in.html http://wely-lau .net/2011/02/25/combining-web-and-worker-role-by-utilizing-worker-role-concept/

于 2013-01-01T09:01:45.023 に答える