7

Windows Azure に関するいくつかの簡単な質問に誰かが答えてくれることを期待していました。これが少し怠け者であることは承知していますが、Azure をカバーする Microsoft の Web サイトは、半技術的なプロジェクト リードを対象としており、ビジネス メトリクスが満載のようです。「方法」の概要を簡潔に説明しているようには見えません。

スケーリングを支援するためにいくつかの作業が必要な ASP.NET Web アプリケーションがあります (そこにはいくつかのスパイダー タイプのプロセスとかなり大きなデータベースがあります。また、外部 Web サービスへの多くの呼び出しも行います)。

私の質問は次のとおりです。

  1. 開発の観点から、アプリケーションを標準の iis / sql サーバー タイプのセットアップから Azure に移植するのはいかに簡単か。多くのコーディングが関係していますか。「ファブリック」などをプログラミングするトレーニング ビデオを開始するところまで行きました。アプリケーションを Azure に変換することは本当に実用的ですか?

  2. Azure で Windows Server 2008 R2 インスタンスを実行できると聞きましたが、これは、必ずしも Azure 固有の SDK でプログラミングする必要はなく、iis / sql サーバーのセットアップを Azure に移行して、スケーラビリティの利点を活用できるということですか?すぐに?

4

2 に答える 2

6

トレーニング、移植、スケーリング、仮想マシンの管理など、いくつかのポイントを見つけました。

トレーニング

おそらく、 MSDevにあるいくつかの紹介ビデオを見る必要があります。「Windows Azure Fall 2010」シリーズは最新のものです。Azure でアプリを実行するには、Azure ファブリックと、診断やロール管理などの関連サービスを理解する必要があることに注意してください。

移植

キャッシュ、セッション状態管理、セキュリティ、サードパーティの DLL、COM、レジストリ アクセス、その他の管理者レベルの機能など、コアの asp.net を超えて何をしているのかを確認する必要があります。現在、SDK 1.2 では、レジストリを操作したり、MSI を実行したりすることはできません。関連する StackOverflow の投稿で、課題に遭遇する可能性があるいくつかの領域について説明しています。SQL Azure について: CLR サポートなどの一部の機能は実装されておらず、一部のシステム レベルの機能にアクセスできません。相違点の詳細については、SQL Azure サイトのホワイト ペーパーを参照してください。

PDC 2010 で導入された新機能により、これらの問題のほぼすべてを克服できるはずです。

  • セッション状態は、AppFabric キャッシュでホストされる場合があります。これは単に設定の変更になります。このキャッシュは、デプロイされたすべての Web インスタンスで利用できるため、スケーリングが可能になります。
  • 管理者レベルのアクセスは、管理者モードで利用できます。ロール インスタンスの起動時に、MSI を実行してレジストリなどを変更できます。

スケーリング

アプリがスケーリングを処理する方法を詳しく調べる必要があります。たとえば、すべてのサーバー インスタンスが同じリソースで同時に動作しようとすると、ボトルネックが発生し、ロックが発生する可能性があります。Azure の一般的なパターンは、永続的な Azure キューに作業項目を配置し、バックグラウンドの worker ロール インスタンスにこれらの作業項目を非同期的に使用させることです。

現在、Azure はすぐに使用できるセッション状態管理機能 (SQL Server への状態の保存など) を提供していません。ただし、SQL Azure ブログには、SQL Azure でうまく機能するダウンロード可能なサンプルがあります。前述のように、新しい AppFabric キャッシュ機能はセッション状態の管理を提供するため、すぐに使用できるソリューションをすぐに利用できます。

仮想マシン管理

VM ロールは PDC で発表されました。要するに、これにより、Windows Server 2008 R2 イメージを取得してローカルにビルドし、それを Azure に移動できるようになります。イメージを Azure ファブリックで管理できるようにする Azure 拡張機能をインストールする必要があります。

ただし、トレードオフがあります。VM は OS のアップグレードやパッチの恩恵を受けません。これらを (差分ディスクを介して) 管理する必要があります。Azure ファブリックは引き続き VM の正常性を監視し、必要に応じて VM を再起動または移動します。Azure のサービスを 100% 利用できるように、最初に管理者モードを利用することをお勧めします。

于 2010-11-02T12:49:00.520 に答える
2

開発者の観点からは、既存の ASP.net アプリを Azure に移行することに関連する作業はあまりありません。セッション状態やキャッシュなど、いくつかの問題に遭遇する場合がありますが、これらは両方とも構成だけで解決できます。SQLAzure は、標準の SQL Server から得られるほとんどの機能を提供し、SQLAzure 移行ウィザードを使用してデータベースをクラウドに移動できます。

PDC10 で彼らは新しい VM の役割を発表したので、これがあなたが言及しているものだと思います。はい、Windows Server 2008 R2 で実行されている既存のセットアップがある場合は、これを仮想化し、VM ロールに移動できます。

また、PDC10 では、WebRoles が完全な IIS7 を実行するようになったことも発表されました。そのため、必要に応じて、VM ロールのルートをたどる必要なく、IIS に取り掛かることができます。

于 2010-11-02T08:36:08.370 に答える