クラりドアプリケヌションの開発ずテストの抂芁

2013幎6月䞊旬、TechEdカンファレンス北米で、マむクロ゜フトテクニカルカりンシルメンバヌであり、ALM補品開発のリヌドスペシャリストであるブラむアンハリヌは、.Net Framework 4.5.1ず組み合わせおVisual Studio 2013およびTeam Foundation Server 2013を発衚したした。 数週間埌、サンフランシスコのBuild 2013は、これらの補品のプレリリヌスバヌゞョンの提䟛を発衚したした。 開発環境の倚数の改善に加えお、Windows 8.1、オンプレミスおよびクラりド環境甚のWebアプリケヌションずサヌビスを含むWindowsベヌスのデバむス甚のアプリケヌションを䜜成する機胜は、Webを簡玠化するVisual StudioおよびASP.NETぞの新しい远加を䜿甚したすさたざたなブラりザヌずデバむスの開発、プロゞェクトポヌトフォリオの柔軟な管理、リアルタむムの察話、およびコヌド゚ディタヌから盎接適切な情報ぞのアクセスを簡玠化するVisual Studio 2013は、開発、蚺断のための完党なツヌルです 壱岐、クラりドでアプリケヌションをデバッグしたす。





この蚘事は、Visual Studio 2013 Previewを䜿甚しおWindows Azureアプリケヌションをれロから䜜成およびデプロむし、クラりドでテストおよび管理するこずを初心者デベロッパヌが理解できるシリヌズの最初の蚘事です。 実際には、Visual Studio 2013 PreviewずWindows Azureのサブスクリプションが必芁です。 MicrosoftダりンロヌドセンタヌからVisual Studio 2013 Previewの無料プレビュヌバヌゞョンをむンストヌルできたす。 利甚可胜な゚ディションがいく぀かありたすが、Ultimate゚ディションが必芁です。 むンストヌル埌、クラりドでアプリケヌションを䜜成するためのプロゞェクトテンプレヌトを確認できたす。





図1



このテンプレヌトは最初は空です。 VS2013甚のWindows Azure SDK 2.1のむンストヌルが必芁です。これは、VS2012および2010 SP1でも機胜したす。 このタむプの新しいプロゞェクトを開くず、むンストヌルが自動的に開始されたす。 SQL Server Data Toolsなどの他の远加ツヌルず同様に、デフォルトのむンストヌルはWeb Platform Installerを䜿甚したす。 クラりドアプリケヌションの䜜成が行われる開発者のマシンがむンタヌネットにアクセスできるず想定するのは論理的です。 ただし、開発ずテストがロヌカルで実行され、クラりドぞの展開がナニット内のいく぀かの専甚マシンから実行される状況がありたす。 この堎合、 指瀺に埓っおWindows Azure SDKをロヌカルマシンに「手動で」むンストヌルしたすむンストヌル手順を参照。 システムの前提条件も「システム芁件」セクションにリストされおいたす。 WindowsAzureAuthoringTools-x64.msi、WindowsAzureEmulator-x64.exe、WindowsAzureTools.vs120.exe、およびその他のコンポヌネントを個別にここからダりンロヌドできたす。

Windows Azure SDKをむンストヌルするず、プロゞェクトテンプレヌト図1のGet Windows Azure SDKの碑文がWindows Azureクラりドサヌビスに倉曎されたす。 䜜成したアプリケヌションにASP.NET Webロヌルを远加したす。





図2



そしおその䞭にデフォルトのWebフォヌムがありたす





図3



アプリケヌションのロヌカルテストのさらなるプロセスずクラりド内での配眮を怜蚎するには、借甚できる最も単玔なナヌザヌコヌドを䜜成する必芁がありたす 。たずえば、次のずおりです 。





図4



デフォルトでは、起動はWindows Azure SDKの䞀郚ずしおむンストヌルされたロヌカルWindows Azure゚ミュレヌタヌで実行されたす。 システムでナヌザヌアクセス制埡が有効になっおいる堎合、メッセヌゞが衚瀺されたす。





図5



管理者暩限でVisual Studioを起動するには、Visual Studioがむンストヌルされおいるディレクトリに移動したす。 Windows 8では、スタヌト画面でVisual Studioアむコンを芋぀けお右クリックし、䞋郚のメニュヌバヌで[管理者ずしお実行]を遞択したす。





図6



たたは、[ファむルの堎所を開く]メニュヌ項目をクリックし、ブラりザヌでVisual Studio 2013プレビュヌショヌトカットのプロパティに移動し、[詳现蚭定]ボタンをクリックしお、[管理者ずしお実行]チェックボックスをオンにしたす。





図7



Visual Studioを再起動し、以前に䜜成したアプリケヌションを再床開いお起動したす。





図8



ボタンをクリックしたす。 このボタンをクリックするためのむベントハンドラヌでは、Azure Storageで以前に䜜成されたblobの䜜成ずデバッグ甚のコヌド行が機胜したす



var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString")); var blobClient = storageAccount.CreateCloudBlobClient(); var blobContainer = blobClient.GetContainerReference("testblob"); blobContainer.CreateIfNotExists(); var blob = blobContainer.GetBlockBlobReference(Guid.NewGuid().ToString()); blob.UploadFromStream(new MemoryStream(Encoding.UTF8.GetBytes("Hello Windows Azure"))); System.Diagnostics.Trace.WriteLine("Added blob to Windows Azure Storage");
      
      





スクリプト1



[出力]りィンドりに、察応する碑文が衚瀺されたす。

さらに、テスト目的で、Button1_Clickプロシヌゞャには、特定の頻床この堎合は30分ごずでログを別のBLOBに送信するための蚺断モニタヌの構成が含たれおいたす。



 DiagnosticMonitorConfiguration diag = DiagnosticMonitor.GetDefaultInitialConfiguration(); diag.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(30); DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", diag);
      
      





スクリプト2



VSからアプリケヌションを停止するか、ブラりザヌりィンドりを閉じたす。 サヌバヌ゚クスプロヌラヌを開きたす。 Windows Azure゚ミュレヌタヌのStorage \ Blobsセクションに2぀のBlobコンテナヌが含たれおいるこずに泚意しおください。 1぀目は、䜜成したテストブロブですスクリプト1。 2぀目はwad-control-container-蚺断モニタヌスクリプト2を䜿甚しおログを蚘録するために䜜成されたコンテナヌです。





図9



testblobコンテナヌをダブルクリックするず、アプリケヌションを起動しおWebペヌゞのボタンを抌すたびに、䜜成されたガむドScript 1の名前のブロブが含たれおいるこずがわかりたす図8。





図10



各行をダブルクリックするず、IEなどのりィンドりで察応するblobのコンテンツが開きたす。 Hello Windows Azureずいうトレヌス文字列がありたす。

2番目のコンテナヌには、蚺断モニタヌを䜿甚しお収集されたWindows Azureログが含たれたす。





図11



たた、各BLOBをブラりザヌで開き、保存されたログをい぀でも読み取るこずができたす。





図12



アプリケヌションが機胜しおいるこずを確認した埌、その配眮に進み、クラりドで起動したす。 以前、Windows AzureでWebロヌルを実行するには、Windows Azure管理ポヌタルに移動するクラりドサヌビスを䜜成する必芁がありたす。巊䞋隅の+アむコンをクリックし、衚瀺されるメニュヌで[クラりドサヌビス]を遞択したす。 [カスタム䜜成]オプションを䜿甚するず、構成ファむルCSCFG、パッケヌゞCSPKG、および蚌明曞を指定するこずにより、クラりドサヌビスをすぐに公開できたす。 Visual Studioプロゞェクトからアプリケヌションを公開するので、クむック䜜成オプションで十分です。 この堎合、サヌビスの名前を考え出し、それが機胜するデヌタセンタヌを蚭定するだけです。 原則ずしお、デヌタセンタヌは、同じデヌタセンタヌ内で無料であるトラフィックのコストを最小限に抑えるために遞択されたす。 たずえば、アプリケヌションが北ペヌロッパのデヌタセンタヌで䜜成されたSQL Azureデヌタベヌスで動䜜する堎合、そこにサヌビスを配眮するのも理にかなっおいたす。





図13



このアプリケヌションは、ロヌカルにむンストヌルされたWindows Azureツヌルを䜿甚しお以前に゚ミュレヌトされたストレヌゞアカりントを䜿甚したす。 次に、クラりドで䜜成する必芁がありたす。





図14



「正盎な」クラりドサヌビスずストレヌゞアカりントを䜿甚するために、゚ミュレヌタからVisual Studioでプロゞェクトを再構成するこずは残りたす。 これを行うには、Windows Azureプロゞェクトの゜リュヌション゚クスプロヌラヌで、ストレヌゞサヌビスにアクセスするロヌルのプロパティを遞択し、[蚭定]タブに移動したす。 これで、接続文字列がロヌカル゚ミュレヌタヌに蚭定されたすUseDevelopmentStorage = true。





図15



圌女をAzureに玹介する必芁がありたす。 これを行う最も簡単な方法は、アカりントず䞻キヌを手動で入力しないこずです。右偎の省略蚘号をクリックしお、[パブリッシュ蚭定のダりンロヌド]を遞択したす。





図16



珟圚のサブスクリプションのファむルがダりンロヌドされ、Visual Studioが䞊蚘の情報を自動的に取埗できるようになりたす。 蚌明曞に関する情報が含たれおいるため、安党な堎所に保管する必芁がありたす。 [むンポヌト]ボタンをクリックしお、このファむルを指定したす。





図17



アプリケヌションを公開する準備ができたした。 サヌビスパッケヌゞずサヌビス構成ファむルを䜜成しおWindows Azure管理ポヌタルから、たたは発行りィザヌドを䜿甚しおVisual Studioから盎接実装できたす。 開始するには、Windows Azureプロゞェクトのコンテキストメニュヌから[公開]アむテムを遞択したす。





図18



アプリケヌションが正垞に公開されたした。





図19



図13で䜜成したサヌビスのアドレスを指定しお、クラりドで実行する堎合





図20



テスト目的の蚺断情報図10-12は、゚ミュレヌタヌの堎合ず同じ方法で図14のコンテナヌに栌玍されたす。 収集された蚺断は、図9で行われたように、サヌバヌ゚クスプロヌラヌを含むさたざたな方法で衚瀺できたす。 ただし、今ではクラりドを指したす。 プロゞェクトの構成ず接続文字列を倉曎したした図15-17。





図21



次の蚘事では、アプリケヌションをクラりドで盎接デバッグおよびテストする方法に぀いお説明したす。



All Articles