Windows Azure SDK の最新リリースについて - .NET 4.5、Windows Server 2012 など
このポストは、1 月 9 日にフォーラムに投稿された Recent Updates to the Windows Azure SDK - .NET 4.5, Windows Server 2012 and more の翻訳です。
編集メモ : 今回は、 Mohit Srivastava (英語) および Dennis Angeline の投稿をご紹介します。
Windows Azure SDK for .NET (英語) の最新リリースでは、画期的な機能強化が多数実施されています。以下の新機能が導入されました。
- .NET 4.5/Windows Server 2012 (OS ファミリ 3) を Web ロール/Worker ロールでサポート
- VS ツール - 生産性を向上
- Web ロール/Worker ロール向けキャッシュの正式運用開始
- ストレージ - 新しいツールおよびクライアント ライブラリ
- サービス バス - クライアント ライブラリおよびツールを更新
上記の他に、Windows Azure PowerShell (英語、別途ダウンロード) で、サービス バス名前空間および VHD のアップロードのサポート (英語) が追加されました。これらの機能強化が実施された SDK および PowerShell は Windows Azure .NET デベロッパー センター (英語) から入手できます。以下では、それぞれの機能強化について詳しく説明します。
.NET 4.5/Windows Server 2012 (OS ファミリ 3) を Webロール / Workerロールでサポート
今回のリリースされた SDK では、クラウド サービスのアプリケーションを Windows Server 2012 で実行できるようになりました。Windows Server 2012 を使用する場合は、IIS 8 および .NET 4.5 の新機能もご利用いただけます。IIS 8 は WebSocket に対応したため、ゲームやチャットといった、ブラウザーやスマートフォンで動作する最新のリアルタイム アプリケーションを構築するうえで役立ちます。.NET 4.5 では、ASP.NET が大幅に強化され、非同期機能の拡充、WebSocket のサポートのほか、パフォーマンス向上によって起動時間の短縮 (最大 35%) とメモリ占有領域の削減が達成されています。
Visual Studio でこれらの機能を使用するには、まず .NET 4.5 対応の Windows Azure クラウド サービス プロジェクトを作成します。
アプリケーションは、OS ファミリ 3 または Windows Server 2012 をターゲットとして自動的に構成されます。
既に OS ファミリ 1 (Windows Server 2008 SP2) または OS ファミリ 2 (Windows Server 2008 R2) のプロジェクトが存在する場合は、ターゲットを OS ファミリ 3 に変更すると Windows Server 2012 を利用できます。2012 年 10 月版の SDK をインストールした後、プロジェクトをアップグレードして最新の SDK をターゲットに指定します (詳細は次のセクションを参照してください)。それから、ServiceConfiguration の OS ファミリの属性を、上図のように「3」に設定します。
VS ツール - 生産性を向上
2012 年 10 月版 SDK は、2011 年 11 月版 SDK および 2012 年 6 月版 SDK と同一の環境にインストールが可能です。このため、新しい SDK をインストールして新規プロジェクトで新機能をテストするとともに、既存のプロジェクトについては準備を整えてからアップグレードすることができます。
準備が完了したら、Windows Azure クラウド サービス プロジェクトを右クリックして [Properties] をクリックし、[Application] タブの [Upgrade] を選択してプロジェクトのアップグレードを実施します。
使用中のコンピューターにインストールされている SDK が 2012 年 10 月版のみの場合は、Visual Studio で [File]、[Open] の順に選択し、表示された確認メッセージに従ってプロジェクトをアップグレードできます。
クラウド サービス プロジェクトが正常にアップグレードされると、該当するプロジェクトのプロパティで [Windows Azure Tools version] の項目に “October 2012” と表示されます。
このようにプロジェクトを変換すると、新たに OS ファミリ 3 および .NET 4.5 をターゲットとして指定できるようになります (OS ファミリ 3 の指定については、前のセクションを参照してください)。
ツールには他にも以下の機能強化が実施されています。
- 1 サブスクリプションあたり最大 25 の管理証明書をサポート
- ポータルへのコンテキスト スイッチを軽減 - ポータルからユーザーのサブスクリプション情報をインポートするだけで、ストレージおよびサービス バスでのツールの使用、および接続文字列の取得が可能
- ストレージおよびサービス バスで、キャッシュとサーバー エクスプローラーのツールを改善 (詳細は次のセクションを参照してください)
Webロール /Workerロール向けキャッシュを正式運用開始
Windows Azure キャッシュは、2012 年 10 月版 SDK の一部として一般提供されています。キャッシュ機能により、ユーザーのロール インスタンス上のメモリをキャッシュ クラスターとして使用できます。高可用性モード使用時には、フォールト ドメインおよびアップグレード ドメインの異なる複数の場所にセカンダリ コピーが保存されます。キャッシュ クラスター内のいずれかの仮想マシンが何らかの理由で停止しても、キャッシュ クラスターはセカンダリ コピーを使用できるため、データ損失が防止されます。
他にも、以下の機能が加わっています。
- 事前に構築された、セッション状態およびページ出力のキャッシュ用 ASP.NET プロバイダー。これにより、アプリケーションのコードを変更することなく Web アプリケーションの動作速度を向上できます。
- すべてのシリアライズ可能な管理オブジェクト (例: CLR オブジェクト、列、XML、バイナリ データ) のキャッシュ
- Memcached との互換性
クラウド サービスのロールに対して、ロールのプロパティ ページから Windows Azure のメモリ内の分散キャッシュ クラスターを有効化および構成できます。詳細については、「Windows Azure キャッシュの使用方法 (英語)」を参照してください。
ストレージ - 新しいツールおよびクライアントライブラリ
Visual Studio のサーバー エクスプローラーでは、Windows Azure ストレージの Blob およびキューの表示や管理に関するサポート機能が強化されました。[Add New Storage Account] ダイアログでは、ポータルからストレージの接続文字列をコピーしなくても、ユーザーのサブスクリプション内のストレージ アカウントを列挙できるようになりました。
[Blobs] ノードでは、Blob のアップロード、ダウンロード、クエリ、および追加と削除ができます。
[Queues] ノードでは、キューのメッセージの追加やデキュー、およびキューをクリアすることができます。
さらに、Windows Azure ストレージ クライアント ライブラリ バージョン 2.0 が NuGet で公開されました。これには、簡素化されたテーブル用インターフェイス、デバッグ機能の拡充、Blob のダウンロード再開、非同期アカウント間での Blob のコピーなどといった新機能が盛り込まれています。詳細については、「.NET および Windows ランタイム用 Windows Azure ストレージ クライアント ライブラリ 2.0 の概要 (英語)」を参照してください。
ライブラリには大幅な変更が施されており、また現時点で Windows Azure 診断がストレージ クライアントのバージョン 1.7 に依存しているため、Visual Studio のクラウド サービス プロジェクトでは引き続きストレージ クライアント 1.7 を使用します。ただし、アセンブリ名が変更されたため、[Add Reference] を使用してストレージ クライアント 2.0 と共存させることができます (NuGet を使用するとアセンブリが置換されます)。変更および移行に関する詳細については、「Windows Azure ストレージ クライアント ライブラリ 2.0 の大幅な変更点および移行ガイド (英語)」を参照してください。
サービスバス - クライアントライブラリおよびツールを更新
サービス バスのクライアント ライブラリがバージョン 1.8 に更新されました。新機能が導入され、リッチなメッセージ フローを使用するアプリケーションの構築が容易になっています。その一環として、自動転送でキューやトピックに接続できるようになりました。これにより、トピックのスケールアウト、および複数のキューから単一キューへのメッセージのファンインが可能です。さらに、新しい手法を使用して、エンティティの更新やクエリ、およびメッセージ ロックの更新できます。詳細については、「2012 年 12 月版リリースの新機能」を参照してください。
ストレージと同様、ポータルに移動しなくとも、インポートしたユーザー サブスクリプションの設定を適用してサービス バスのツールを使用できるほか、名前空間をインポートすることができます。
名前空間を選択すると、キューやトピックでテスト メッセージを作成、削除、および送信できます。今回リリースされた SDK では、既存のキューおよびトピックを更新して、設定変更によりアプリケーションの動作にどのような影響を及ぼすかをテストすることも可能です。
まとめ
公開中の 2012 年 10 月版 Windows Azure SDK for .NET (英語) には、上記の機能強化がすべて適用されており、すぐにご利用いただけます。Windows Azure アカウントをお持ちでないお客様は、無料評価版にサインアップして最新の Windows Azure 向け .NET アプリケーションの構築をお試しください。また、Windows Azure .NET デベロッパー センター (英語) では、さらに詳細な情報をご覧いただけます。
近日中に、最新の Windows Azure PowerShell の機能強化に関する詳細についてご紹介する予定です。どうぞ、ご期待ください。
お役に立てましたら幸いです。
Windows Azure SDK チーム