特集 Windows Azure開発入門(前編) 無償開発環境で試すWindows Azureクラウド開発 デジタルアドバンテージ 一色 政彦2009/01/14 |
|
Page1
Page2
|
■WebロールのWindows Azureクラウド・サービスの作成
「Webアプリ」はクラウド上に乗ると、その呼び方が「サービス」に変わる。つまり「Windows Azureクラウド・サービス」の中身は、基本的に「ASP.NET Webアプリ」である。そして、Windows Azureでは、通常の「Webアプリ」に相当するプロジェクトを「Webロール」と呼んでいる(ちなみに「Workerロール」というプロジェクトもあるが、これは非同期で何らかの処理を実行したいときに使用する)。
それでは、「Webロールのクラウド・サービス」(以降、Webクラウド・サービス)のプロジェクトを作成しよう。
●Webクラウド・サービス・プロジェクトの作成
[スタート]メニューから[すべてのプログラム]−[Microsoft Visual Web Developer 2008 Express Edition]を選択してIDEを起動し、メニューバーから[ファイル]−[新しいプロジェクト]を選択する。これにより、次のような[新しいプロジェクト]ダイアログが表示される。
[新しいプロジェクト]ダイアログによる「Webロールのクラウド・サービス」プロジェクトの作成 |
左側の[プロジェクトの種類]ツリーから「Visual Basic」−「Cloud Service」もしくは「Visual C#」−「Cloud Service」を選択し、右側の[テンプレート]一覧から「Web Cloud Service」を選択する。そしてプロジェクト名は「CloudService1」のまま、[OK]ボタンをクリックしよう。
これにより、次のようにプロジェクトが作成される。
自動生成された「Webロールのクラウド・サービス」プロジェクトのひな形 |
●Webクラウド・サービスに含まれる2つのプロジェクト
上の画面の[ソリューション エクスプローラ]を見ると、ソリューションの配下には、以下の2つのプロジェクトが作成されているのが分かる。
- CloudService1
- CloudService1_WebRole
「CloudService1」は、クラウド・サービスを管理するためのプロジェクトである。詳細は後編で説明する。
一方、「CloudService1_WebRole」は、名前からも分かるように、Webロール(=Webアプリ)のプロジェクトで、このプロジェクトの内容を開発していくことになる。
基本的に、Webロールの開発は従来のASP.NET Webアプリの開発と変わらない。筆者が実験してみたところ、そのほかの.NET関連技術であるSilverlight 2や、WCF(Windows Communication Foundation)によるWebサービスも問題なく作成できた。このように、これまでに身に付けたASP.NETのスキルが生かせる(※ただしデータアクセスに関しては、データベースやファイルを直接扱うことができず、Windows AzureストレージやSQLデータ・サービスなどのWebサービスを利用する必要がある)。
また、既存のASP.NET Webアプリ(やASP.NET Webサイト)をWebクラウド・サービスに移行することもそれほど難しくない。これについては「実証実験:Webアプリケーションをクラウドの中に移行した例」という記事で、その手法や注意事項を簡単にまとめている。
●Webロールの開発
上記のとおり、Webクラウド・サービスの開発は、通常のWebアプリの開発と変わらず、これを説明することは本旨ではないので、本稿ではASP.NET開発部分の詳細は説明しない。今回はシンプルな例として、写真をアップロード投稿して、これまでの投稿画像の一覧を表示するWebアプリを作成する。
次の画面はその開発画面の様子である。
Visual Web Developer 2008 Express EditionにおけるWebクラウド・サービスの開発例 |
●ローカル環境で実行
メニューバーから[デバッグ]−[デバッグなしで開始](もしくは[デバッグ開始])を選択すれば、ローカル環境でWebクラウド・サービスが実行される。
ただし、実行を開始する前に「Development Fabric」(=開発用ファブリック*1)と「Development Storage」(=開発用ストレージ)を起動しておく必要があるが、基本的に、Visual Web Developer 2008から実行しようとしたときにこれらは自動起動する(ので、実際には何もしなくてよい)。
何らかのトラブルによりDevelopment Fabricが起動されない場合は[スタート]メニューの[すべてのプログラム]−[Windows Azure SDK (October 2008 CTP)]−[Development Fabric]を直接実行してから再度、実行してみてほしい。
*1 ファブリックは、地理的に分散されたデータ・センター上に構築されたインターネット・スケールのホスティング環境のこと。Development Fabricは、本物のファブリックである「Windows Azure Fabric」をローカル環境でシミュレートするもの。 |
次の画面は実際にWebクラウド・サービスをローカル環境で実行したところだ。
Webクラウド・サービスの実行例 |
以上のように、ASP.NET Webフォームと同じようにデザイン、開発でき、ASP.NET開発とほぼ同じように実行、デバッグできる。
■
以上、ローカル環境でWindows Azure開発を行うための基礎中の基礎を紹介した。Windows Azure開発をより詳しく学ぶにはサンプルを参照、実行してみることが大いに役立つだろう。Windows Azure SDKのサンプルは、そのインストール・フォルダの場所にあるので、ぜひそれらのサンプルをじっくりと試してみてほしい。
C:\Program Files\Windows Azure SDK\v1.0\samples.zip
次回後編は本番サイトをWindows Azureへ展開する方法について紹介する。
INDEX | ||
[特集] Windows Azure開発入門(前編) | ||
無償開発環境で試すWindows Azureクラウド開発 | ||
1.Windows Azure開発環境の構築 | ||
2.WebロールのWindows Azureクラウド・サービスの作成 | ||
[特集] Windows Azure開発入門(後編) | ||
Windows Azureクラウド・サービスの配置/運用 | ||
1.Azure Services Developer Portalでのプロジェクト作成 | ||
2.クラウド・サービスの構成 | ||
3.クラウド・サービスの配置 | ||
4.Windows Azure/Azure Services Platformの利用申請 | ||
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|
キャリアアップ
未来展望台コーナースポンサーからのお知らせ
- - PR -
- - PR -
転職/派遣情報を探す
「ITmedia マーケティング」新着記事
SEOは総合格闘技である――「SEOおたく」が語る普遍のマインド
SEOの最新情報を発信する「SEOおたく」の中の人として知られる著者が、SEO担当者が持つべ...
HubSpot CMSにWebサイトの「定石」を実装 WACUL×100のパッケージ第1弾を提供開始
WACULと100は共同で、Webサイトの「定石」をHubSpotで実装する「Webサイト構築パッケージ...
電通調査で「料理は面倒」が6割超 なぜそうなった?
電通の国内電通グループ横断プロジェクト「電通 食生活ラボ」は、「食生活に関する生活者...