normalian blog

Let's talk about Microsoft Azure, ASP.NET and Java!

Windows Azure AppFabric SDK 2010年7月版リリース

7月1日にWindows Azure AppFabricの最新版SDKがリリースされた。商用サービス開始から2回目となる今回のバージョンアップでは、以下の二つが主な変更点となる。

  • .NET 4のサポート
  • クロスドメイン ポリシーファイルのサポート

先月リリースされたAzure SDK 1.2で.NET 4がサポートされたことに続き、Windows Azure AppFabric SDK でも.NET 4がサポートされた。また、クロスドメイン ポリシーファイルをサポートし、SilverlightやFlashがサービス・バスやアクセス・コントロールのクロスドメイン利用が可能となる。

Windows Azure AppFabric SDK をダウンロードする

まずは、Download details: Windows Azure AppFabric SDK V1.0 - July Updateより、「WindowsAzureAppFabricSDK.msi」をダウンロードして、SDKのセットアップを行って頂きたい*1。また、本SDKに対応したサンプルコードも付属しているので、別途ダウンロードして欲しい。

インストールパスを変更しない&64bitOSの場合は「C:\Program Files (x86)\Windows Azure platform AppFabric SDK」にSDKインストールされる。「Assemblies」には.NET 3.5版と.NET 4版のAppFabric SDKのDLLが格納され、「Tools」には「Acm.exe」というアクセスコントロールを制御するためのコマンドラインツールが存在する。是非一度フォルダを確認して頂きたい。

Windows Azure AppFabric SDKのサンプルコードを実行する

「details: Windows Azure AppFabric SDK V1.0 - July Update」から、サンプルコードの一式が格納された「WindowsAzureAppFabricSDKSamples_V1.0-CS.zip」と「WindowsAzureAppFabricSDKSamples_V1.0-VB.zip」がダウンロードできる。
今回はC#のサンプルコードである「WindowsAzureAppFabricSDKSamples_V1.0-CS.zip!ServiceBus\Scenarios\WindowsAzure」サンプルを利用して紹介する。まず、Visual Studio 2010でソリューションを開き、.NET 4のソリューションに変換する。

設定ファイル(App.config、Web.config)を変更するだけで、簡単にDevelopment Fabricと本番環境での動作を確認する事ができる。設定ファイルの変更方法については、「第2回 Azure AppFabricによるオンプレミス連携の適用例 」を参照して頂きたい。

Windows Azure」サンプルコードは以下の動作を行うが、実際にサンプルコードを実行して挙動を確認して頂きたい。繰り返し述べるが、設定ファイルの変更のみで本番環境でさっくり動くという、非常に魅力的なサンプルが付属している*2

  • Webロール側は、ブラウザからのメッセージを受け取り、サービスバスのサービスを呼ぶ。
  • Workerロール側は、サービスバスにサービスを公開する。サービスバスのサービスは、サービス利用者からメッセージを受け取り、受け取った文字列をそのまま返す処理を行う。


また、.NET 4のソリューションとして変換された「WebRole1」プロジェクトの「Web.config」は、以下の様にすっきりとした構成をしている。

<?xml version="1.0"?>
<configuration>
	<appSettings>
		<add key="ServicePath" value="samples/echo"/>
		<add key="ServiceNamespace" value="MY_SERVICE_NAME"/>
		<add key="IssuerName" value="MY_ISSUER_NAME"/>
		<add key="IssuerSecret" value="MY_ISSUER_SECRET"/>
	</appSettings>
	<connectionStrings/>
	<system.web>
		<compilation debug="true" targetFramework="4.0">
		</compilation>
		<authentication mode="None"/>
		<customErrors mode="Off"/>
		<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
	</system.web>
	<!-- 
        The system.webServer section is required for running ASP.NET AJAX under Internet
        Information Services 7.0.  It is not necessary for previous version of IIS.
   	 -->
</configuration>

*1:Windows Azure SDK 1.2もセットアップして頂けると、今回紹介するサンプルが滞りなく稼働確認が取れる

*2:本番環境で動かす場合、コーディングにコツがある。詳しくは「[http://www.amazon.co.jp/gp/product/4822294005/:title=Windows Azureアプリケーション開発入門]」を参照して頂きたい