mvcConf @:Japan
~ ASP.NET MVC ブート キャンプ ~


クラウドと HTML5 で作成するスケー
  ラブルな Web アプリ開発術
 ~ Windows Azure + ASP.NET MVC 編~
        株式会社野村総合研究所
         勇大地 (いさみ だいち)
       Microsoft MVP for Windows Azure
セッションの目的とゴール
 目的
  ASP.NET MVC × jQuery の開発を学習する
  マルチデバ゗ス向け Web ゕプリ開発を学習する
  Web ゕプリのクラウド移行を学習する

 ゴール
  ASP.NET MVC × jQuery の開発ができる
  マルチデバ゗ス向けの画面開発ができる
  クラウド上に Web ゕプリを配置できる
                                   2
今回作成したサンプル
 機能
 コメント付きで投票
 投稿の割合をグラフ化




 http://mvcconfjapan120611.cloudapp.net/
                                           3
アジェンダ
 クラウド+ HTML5 が必要な理由は?

  HTML5 画面開発のポ゗ントは?

  クラウドに移行するには?

 まとめ
HTML5 と クラウドの振り返り
 HTML5 の振り返り
 クラウドの振り返り
 クラウド上で動く WEB ゕプリ
HTML5の振り返り
 HTML4 の後継である次期標準仕様

 新機能が追加
 新規マークゕップタグの登場
 新 API(ビデオ・音楽の再生、オフラ゗ン実行等)

 ・ 約 10 年ぶりの標準仕様改正
 ・ HTML 4.01 に比べ、適用可能な領域が増した
クラウドの振り返り 1/2
 メリット
 柔軟なスケールゕウト/スケー
  ルダウン
 保守の手間、管理コストを削減

 デメリット
 環境カスタマ゗ズが容易でない
 ゕーキテクチャが従来と異なる
クラウドの振り返り 2/2
Windows Azure Platform
  Azure AppFabric    SQL Azure
  • Service Bus      • RDB
  • Access Control   • Data Sync
  • Caching          • Reporting   Windows Azure
                                   Marketplace
 Windows Azure
                                     DataMarket
  コンピュート              ストレージ
                                     Applications
  •Webロール             • Blob
  •Workerロール          • Table
  •VMロール              • Queue      Microsoft
                      • Drive      Pinpoint
クラウドと HTML5 の利用例



demo ...

                   9
クラウド上で動く WEB アプリ 1/2

          1            キャッシュ
               セッション
                       機能

          2

クラ゗ゕント         永続データ
          3            分散 KVS
         サーバ

         クラウドプラットフォーム
クラウド上で動く WEB アプリ 2/2
 クライアント
  jQuery

 サーバ
  ASP.NET MVC

 永続データ、セッション
  Windows Azure ストレージ サービス
  Windows Azure AppFabric キャッシュ
                                   11
アジェンダ
 クラウド+HTML5 が必要な理由は?

  HTML5 画面開発のポ゗ントは?

  クラウドに移行するには?

 まとめ
HTML5 画面開発のポイント
 HTML5 新機能の利用             jQuery
 マルチデバイス対応                  ×
 旧ブラウザとの共存
                        ASP.NET MVC
                            で解決


未だに消えない IE6   PC /スマフォへの対応
必修と化した jQuery !!
   jQuery Core            DOM 操作等のコゕ機能
   jQuery Mobile          スマフォ向け
   jQuery Template        テンプレートエンジン
   jQuery Validate        バリデーション
   jQuery UI              UI コンポーネント
   jQuery Globalization   国際化

      ASP.NET MVC との相性が良い!
jQuery Core
 jQuery の主要機能(一部)
//セレクタ
 var elem1 = $(‘#my_id’);

//属性の操作
 var link = $(‘#my_element’).attr(‘href’);

//CSSの取得
 var color = $(‘#my_element’).css(‘background’);

//゗ベント追加
$(‘#mybutton’).click( function(){
 alert(‘ボタン押下’);
});
                                                   15
jQuery Mobile 1/3
 現在のバージョン
  は 1.0α4.1
 モバ゗ル向けプラ
  グ゗ン
 Windows Phone 7
  にも対応
 既存プラグ゗ンと
  も連携可
jQuery Mobile 2/3
 画面定義
<!-- ページ定義 -->
<div data-role="page">
    <div data-role="header">
       Home
    </div>
    <div data-role="content">
         ああああああ
    </div>
    <div data-role="footer">
                                ページ
         <h1>
              &copy; 誰か</h1>
    </div>
</div>
jQuery Mobile 3/3
 画面要素定義
<!-- ページ定義 -->
<a href="#"
 data-icon="home“
 data-iconpos="notext“            Home ゕ゗コン
 data-direction="reverse">


<!-- ページ定義 -->
<ul
 data-role="listview"
 data-inset="true">
</ul>                             リストビュー
                             18
jQuery Template
 JavaScript のテンプレートエンジン
var dataObject = {
  name: ‚勇大地",
  comments: [‚Azureは良いねぇ…‛,‚チャックさん゗ケメーン!"]
 };
$("#sometmpl").tmpl( dataObject )
               .appendTo("ul");

<script id="sometmpl" type"text/x-jquery-tmpl">
       <li>${$i}) ${name}(こめんと: {{each(i,comment)
comments}}${comment}{{/each}})</li>
</script>
<ul></ul>
                                                    19
jQuery Validate
 バリデーションのルールを設定
$(function () {
     $("#my_form").validate({
        rules: {
            my_textbox: { required: true }},
        messages: {
            my_textbox: {
            required: "1文字くらい入力してほしいお。。。"
        }}
     });});




                                               20
サーバサイドは ASP.NET MVC
 意図通りの HTML を記述可能
 URL ルーテゖング
 モデルバ゗ンダ
 グローバルフゖルタ
 単体テストの容易化


   jQuery との相性が良い!!
JSonValueProviderFactory
 JSON データの送受信(MVC3 の新機能)
[HttpGet]
public ActionResult JsonMethod(Person person)
{
    //リクエストデータの表示
    Trace.TraceInformation(person.ToString());

    //JSON 形式のデータを返す
    return Json(new Person()
    {
        Name = "勇大地", Comment = "緊張して胃が痛い"
    } , JsonRequestBehavior.AllowGet);
}
                                                 22
HTML5 with jQuery Mobile



demo ...

                           23
アジェンダ
 クラウド+ HTML5 が必要な理由は?

  HTML5 画面開発のポ゗ントは?

  クラウドに移行するには?

 まとめ
Windows Azure 移行のポイント
 アセンブリ配置

 デバッグ手法の差異

 データの永続化

 セッションの取り扱い   Appendix で
アセンブリ配置
1. 新規「ASP   .NET MVC3 Web アプリケーション」を追加
2. 「ソリューション内の Web ロールプロジェクト」を追加
3. ASP.NET MVC 側のプロジェクトを右クリックし、「配置
   可能な依存関係の追加」を選択
    1.          2.          3.
デバッグ手法の差異
 Web デプロイが便利!!
 数秒で再デプロイ可能
 Azure SDK 1.4.1 から
 要リモートデスクトップ
データの永続化                      安価なスケーラ
                             ブル Web ゕプ
データの例    量とサイズ   想定される形式     リの要点
顧客マスタ    多い      ・関係型
在庫マスタ            ・頻繁に参照される
入出庫データ   多い      ・関係型
受注データ            ・レコードを蓄積
画像データ    サ゗ズが巨   ・フゔ゗ル等       ・Blob Storage
動画データ    大                    ・Drive
ログ       サ゗ズが小   ・レコードを蓄積
テキスト     さい                   ・Table Storage

伝搬メッセー サ゗ズが小     ・キュー等        ・Queue Storage
ジ      さい
       クラウドのストレージ活用がポイント
サンプルのアーキテクチャ
                              Azure
                  1   セッション   AppFabric


           ロードバ
                              キャッシュ


            ランサ
  IE9
                  2
                      永続データ
                              テーブル
                  3
スマートフォン
                  ※認証にはAccess Controlを利用
          スケーラブル&マルチデバイス
ASP.NET MVC +
Windows Azure


demo ...

                30
まとめ
 マルチデバイス対応向け開発方法を習得
 HTML5 の仕様をキャッチゕップ
 jQuery の 各種プラグ゗ンを学習

 クラウドを利用したサービス方法を習得
 ゕセンブリ配置に注意
 Web デプロ゗を活用
 永続化データの取り扱いに留意
appendix.

            32
Modernizr の利用 1/2
 ブラウザの HTML5 対応度合いを確認
//SVG 対応の可否
alert("svg is " + Modernizr.svg);

//GPS 位置取得の可否
alert("geolocation is " +
Modernizr.geolocation);

//ゕプリケーションキャッシュの可否
alert("applicationcache is " +
Modernizr.applicationcache);

                                    F12 ツール
                                              33
Modernizr の利用2/2
 ブラウザの HTML5 対応度合いを確認
//<video /> タグへの対応
for (var key in Modernizr.video) {
    alert(key + " : " + Modernizr.video[key]); }

//<audio /> タグへの対応
for (var key in Modernizr.audio) {
    alert(key + ‚ : ‛ + Modernizr.audio[key]); }

//新しい <input /> タグのタ゗プ( url、date 等)
for (var key in Modernizr.inputtypes) {
    alert(key + " : " + Modernizr.inputtypes[key]); }


                                                        34
HTML5 の振り返り + α
 主要ブラウザの HTML5 対応により、HTML5 のサービス展開
  が可能に
                    2010                                    2011

    1Q       2Q         3Q       4Q         1Q        2Q        3Q        4Q
             ★ 9/17β版リリース
                  ★ 11/17 Platform Previwe 7リリース
                                         ★ 3/15 IE9 製品版リリース(HTML5対応)
                                                 ★ 4/13 IE10 Preview(HTML5対応強化)
      ★7/7 4βeta 1リリース
                    ★11/10βeta 7リリース
                                         ★ 3/22 FF4 製品版リリース(HTML5対応)

                                  ★ 2/11 Chrome 9リリース(HTML5対応強化)
                                    ★ 2/11 Chrome 9リリース(HTML5対応強化)
                                      ★ 3/9 Chrome 10 リリース(HTML5対応強化)
                                         ★ 3/22 Chrome 11 リリース(HTML5対応強化)
    ★6/8 Safari 5リリース

                                       ★ 3/9 Safari 5.0.4 リリース(HTML5対応強化)
HTML5 の振り返り + α
                                草案
 2012 年には、HTML4 での普
  及期だった勧告候補になる予定       2011年
 現状は最終草案の段階           5月現在
                               最終草案

                       2012年
                       2月予定
                               勧告候補

                               勧告案
そろそろ HTML5 を学ぶ頃合
                       2014年
                       予定       勧告
Azure を無料で使うには?! 1/2
 MSDN に無償で利用する方法が!

                               ・クレジットカー
                               ド登録不要
                               ・30日間使いた
                               い放題
                               ・次ページ
http://msdn.microsoft.com/ja
-jp/windowsazure/gg674969
Azure を無料で使うには?! 2/2
 特別導入プランを利用       ・特別導入プラン
                   ・XS ゗ンスタンス × 1
                    ⇒月額無料

               ・コンピューテゖング
                24 時間 * 30日 < 750 時間
               ・データ転送量
                0.5 GB * 30 日 < 20 GB
               ・SQL Azure
                タダ!
 特別導入プランの無料枠
学習のステップ
              クレジットカード不要
 最初はローカルで

  次は Azure Pass で

    次は特別導入プランで

      次は長期運用の他プランで

                要クレジットカード
環境構築の方法
 Web Platform Installer を利用!




                               Visual Studio や環境
http://msdn.microsoft.com/ja   設定も一括実施
 -jp/windowsazure/cc974146
セッションの取り扱い 1/2
 セッションデータの共有方法に工夫が必要
                       インスタンス1の
                       セッションデータ
             ゗ンスタンス1
      ロードバ
       ランサ
                       インスタンス2の
                       セッションデータ
ユーザ          ゗ンスタンス2
                       インスタンス3の
                       セッションデータ
             ゗ンスタンス3
セッションの取り扱い 2/2
 セッション共有方法メリデメ
       MSDN Code Gallery   ASP.NET標準のセッ   自作セッションプ        Azure AppFabric
       のセッションプロバイ          ションプロバイダ       ロバイダ            キャッシュ
       ダ
概要     Code Galleryのセッ     ASP.NET標準のセッ   Access mdb等のプ   Azure AppFabric
       ションプロバ゗ダを利          ションプロバ゗ダを利     ロバ゗ダを書き換        キャッシュを利用
       用                   用              える

利用スト   Table Storage       SQL Azure      SQL Azure       Azure AppFabric
レージ                                                       キャッシュ

難点     ・タ゗ムゕウトした           ・タ゗ムゕウトした      ・タ゗ムゕウトし        ・コストが高め
       セッションを自分で削          セッションを自分で削     たセッションを自
       除する必要がある            除              分で削除する必要
       ・SQL Azureに格納す      ・Azure向けのプロバ   がある
       るよりも遅い              ゗ダではないため、
                           コードがいびつになる
                                                      タ゗ムゕウト
                                                      セッションデー
       小        ←          コスト&性能                     →  大
                                                      タを自分で削除
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the
         part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Mvc conf session_5_isami

  • 1.
    mvcConf @:Japan ~ ASP.NETMVC ブート キャンプ ~ クラウドと HTML5 で作成するスケー ラブルな Web アプリ開発術 ~ Windows Azure + ASP.NET MVC 編~ 株式会社野村総合研究所 勇大地 (いさみ だいち) Microsoft MVP for Windows Azure
  • 2.
    セッションの目的とゴール  目的 ASP.NET MVC × jQuery の開発を学習する  マルチデバ゗ス向け Web ゕプリ開発を学習する  Web ゕプリのクラウド移行を学習する  ゴール  ASP.NET MVC × jQuery の開発ができる  マルチデバ゗ス向けの画面開発ができる  クラウド上に Web ゕプリを配置できる 2
  • 3.
    今回作成したサンプル  機能  コメント付きで投票 投稿の割合をグラフ化 http://mvcconfjapan120611.cloudapp.net/ 3
  • 4.
    アジェンダ クラウド+ HTML5が必要な理由は? HTML5 画面開発のポ゗ントは? クラウドに移行するには? まとめ
  • 5.
    HTML5 と クラウドの振り返り HTML5 の振り返り  クラウドの振り返り  クラウド上で動く WEB ゕプリ
  • 6.
    HTML5の振り返り  HTML4 の後継である次期標準仕様 新機能が追加  新規マークゕップタグの登場  新 API(ビデオ・音楽の再生、オフラ゗ン実行等) ・ 約 10 年ぶりの標準仕様改正 ・ HTML 4.01 に比べ、適用可能な領域が増した
  • 7.
    クラウドの振り返り 1/2  メリット 柔軟なスケールゕウト/スケー ルダウン  保守の手間、管理コストを削減  デメリット  環境カスタマ゗ズが容易でない  ゕーキテクチャが従来と異なる
  • 8.
    クラウドの振り返り 2/2 Windows AzurePlatform Azure AppFabric SQL Azure • Service Bus • RDB • Access Control • Data Sync • Caching • Reporting Windows Azure Marketplace Windows Azure DataMarket コンピュート ストレージ Applications •Webロール • Blob •Workerロール • Table •VMロール • Queue Microsoft • Drive Pinpoint
  • 9.
  • 10.
    クラウド上で動く WEB アプリ1/2 1 キャッシュ セッション 機能 2 クラ゗ゕント 永続データ 3 分散 KVS サーバ クラウドプラットフォーム
  • 11.
    クラウド上で動く WEB アプリ2/2  クライアント  jQuery  サーバ  ASP.NET MVC  永続データ、セッション  Windows Azure ストレージ サービス  Windows Azure AppFabric キャッシュ 11
  • 12.
    アジェンダ クラウド+HTML5 が必要な理由は? HTML5 画面開発のポ゗ントは? クラウドに移行するには? まとめ
  • 13.
    HTML5 画面開発のポイント  HTML5新機能の利用 jQuery  マルチデバイス対応 ×  旧ブラウザとの共存 ASP.NET MVC で解決 未だに消えない IE6 PC /スマフォへの対応
  • 14.
    必修と化した jQuery !!  jQuery Core DOM 操作等のコゕ機能  jQuery Mobile スマフォ向け  jQuery Template テンプレートエンジン  jQuery Validate バリデーション  jQuery UI UI コンポーネント  jQuery Globalization 国際化 ASP.NET MVC との相性が良い!
  • 15.
    jQuery Core  jQueryの主要機能(一部) //セレクタ var elem1 = $(‘#my_id’); //属性の操作 var link = $(‘#my_element’).attr(‘href’); //CSSの取得 var color = $(‘#my_element’).css(‘background’); //゗ベント追加 $(‘#mybutton’).click( function(){ alert(‘ボタン押下’); }); 15
  • 16.
    jQuery Mobile 1/3 現在のバージョン は 1.0α4.1  モバ゗ル向けプラ グ゗ン  Windows Phone 7 にも対応  既存プラグ゗ンと も連携可
  • 17.
    jQuery Mobile 2/3 画面定義 <!-- ページ定義 --> <div data-role="page"> <div data-role="header"> Home </div> <div data-role="content"> ああああああ </div> <div data-role="footer"> ページ <h1> &copy; 誰か</h1> </div> </div>
  • 18.
    jQuery Mobile 3/3 画面要素定義 <!-- ページ定義 --> <a href="#" data-icon="home“ data-iconpos="notext“ Home ゕ゗コン data-direction="reverse"> <!-- ページ定義 --> <ul data-role="listview" data-inset="true"> </ul> リストビュー 18
  • 19.
    jQuery Template  JavaScriptのテンプレートエンジン var dataObject = { name: ‚勇大地", comments: [‚Azureは良いねぇ…‛,‚チャックさん゗ケメーン!"] }; $("#sometmpl").tmpl( dataObject ) .appendTo("ul"); <script id="sometmpl" type"text/x-jquery-tmpl"> <li>${$i}) ${name}(こめんと: {{each(i,comment) comments}}${comment}{{/each}})</li> </script> <ul></ul> 19
  • 20.
    jQuery Validate  バリデーションのルールを設定 $(function() { $("#my_form").validate({ rules: { my_textbox: { required: true }}, messages: { my_textbox: { required: "1文字くらい入力してほしいお。。。" }} });}); 20
  • 21.
    サーバサイドは ASP.NET MVC 意図通りの HTML を記述可能  URL ルーテゖング  モデルバ゗ンダ  グローバルフゖルタ  単体テストの容易化 jQuery との相性が良い!!
  • 22.
    JSonValueProviderFactory  JSON データの送受信(MVC3の新機能) [HttpGet] public ActionResult JsonMethod(Person person) { //リクエストデータの表示 Trace.TraceInformation(person.ToString()); //JSON 形式のデータを返す return Json(new Person() { Name = "勇大地", Comment = "緊張して胃が痛い" } , JsonRequestBehavior.AllowGet); } 22
  • 23.
    HTML5 with jQueryMobile demo ... 23
  • 24.
    アジェンダ クラウド+ HTML5が必要な理由は? HTML5 画面開発のポ゗ントは? クラウドに移行するには? まとめ
  • 25.
    Windows Azure 移行のポイント アセンブリ配置  デバッグ手法の差異  データの永続化  セッションの取り扱い Appendix で
  • 26.
    アセンブリ配置 1. 新規「ASP .NET MVC3 Web アプリケーション」を追加 2. 「ソリューション内の Web ロールプロジェクト」を追加 3. ASP.NET MVC 側のプロジェクトを右クリックし、「配置 可能な依存関係の追加」を選択 1. 2. 3.
  • 27.
    デバッグ手法の差異  Web デプロイが便利!! 数秒で再デプロイ可能  Azure SDK 1.4.1 から  要リモートデスクトップ
  • 28.
    データの永続化 安価なスケーラ ブル Web ゕプ データの例 量とサイズ 想定される形式 リの要点 顧客マスタ 多い ・関係型 在庫マスタ ・頻繁に参照される 入出庫データ 多い ・関係型 受注データ ・レコードを蓄積 画像データ サ゗ズが巨 ・フゔ゗ル等 ・Blob Storage 動画データ 大 ・Drive ログ サ゗ズが小 ・レコードを蓄積 テキスト さい ・Table Storage 伝搬メッセー サ゗ズが小 ・キュー等 ・Queue Storage ジ さい クラウドのストレージ活用がポイント
  • 29.
    サンプルのアーキテクチャ Azure 1 セッション AppFabric ロードバ キャッシュ ランサ IE9 2 永続データ テーブル 3 スマートフォン ※認証にはAccess Controlを利用 スケーラブル&マルチデバイス
  • 30.
    ASP.NET MVC + WindowsAzure demo ... 30
  • 31.
    まとめ  マルチデバイス対応向け開発方法を習得  HTML5の仕様をキャッチゕップ  jQuery の 各種プラグ゗ンを学習  クラウドを利用したサービス方法を習得  ゕセンブリ配置に注意  Web デプロ゗を活用  永続化データの取り扱いに留意
  • 32.
  • 33.
    Modernizr の利用 1/2 ブラウザの HTML5 対応度合いを確認 //SVG 対応の可否 alert("svg is " + Modernizr.svg); //GPS 位置取得の可否 alert("geolocation is " + Modernizr.geolocation); //ゕプリケーションキャッシュの可否 alert("applicationcache is " + Modernizr.applicationcache); F12 ツール 33
  • 34.
    Modernizr の利用2/2  ブラウザのHTML5 対応度合いを確認 //<video /> タグへの対応 for (var key in Modernizr.video) { alert(key + " : " + Modernizr.video[key]); } //<audio /> タグへの対応 for (var key in Modernizr.audio) { alert(key + ‚ : ‛ + Modernizr.audio[key]); } //新しい <input /> タグのタ゗プ( url、date 等) for (var key in Modernizr.inputtypes) { alert(key + " : " + Modernizr.inputtypes[key]); } 34
  • 35.
    HTML5 の振り返り +α  主要ブラウザの HTML5 対応により、HTML5 のサービス展開 が可能に 2010 2011 1Q 2Q 3Q 4Q 1Q 2Q 3Q 4Q ★ 9/17β版リリース ★ 11/17 Platform Previwe 7リリース ★ 3/15 IE9 製品版リリース(HTML5対応) ★ 4/13 IE10 Preview(HTML5対応強化) ★7/7 4βeta 1リリース ★11/10βeta 7リリース ★ 3/22 FF4 製品版リリース(HTML5対応) ★ 2/11 Chrome 9リリース(HTML5対応強化) ★ 2/11 Chrome 9リリース(HTML5対応強化) ★ 3/9 Chrome 10 リリース(HTML5対応強化) ★ 3/22 Chrome 11 リリース(HTML5対応強化) ★6/8 Safari 5リリース ★ 3/9 Safari 5.0.4 リリース(HTML5対応強化)
  • 36.
    HTML5 の振り返り +α 草案  2012 年には、HTML4 での普 及期だった勧告候補になる予定 2011年  現状は最終草案の段階 5月現在 最終草案 2012年 2月予定 勧告候補 勧告案 そろそろ HTML5 を学ぶ頃合 2014年 予定 勧告
  • 37.
    Azure を無料で使うには?! 1/2 MSDN に無償で利用する方法が! ・クレジットカー ド登録不要 ・30日間使いた い放題 ・次ページ http://msdn.microsoft.com/ja -jp/windowsazure/gg674969
  • 38.
    Azure を無料で使うには?! 2/2 特別導入プランを利用 ・特別導入プラン ・XS ゗ンスタンス × 1 ⇒月額無料 ・コンピューテゖング 24 時間 * 30日 < 750 時間 ・データ転送量 0.5 GB * 30 日 < 20 GB ・SQL Azure タダ! 特別導入プランの無料枠
  • 39.
    学習のステップ クレジットカード不要 最初はローカルで 次は Azure Pass で 次は特別導入プランで 次は長期運用の他プランで 要クレジットカード
  • 40.
    環境構築の方法  Web PlatformInstaller を利用! Visual Studio や環境 http://msdn.microsoft.com/ja 設定も一括実施 -jp/windowsazure/cc974146
  • 41.
    セッションの取り扱い 1/2  セッションデータの共有方法に工夫が必要 インスタンス1の セッションデータ ゗ンスタンス1 ロードバ ランサ インスタンス2の セッションデータ ユーザ ゗ンスタンス2 インスタンス3の セッションデータ ゗ンスタンス3
  • 42.
    セッションの取り扱い 2/2  セッション共有方法メリデメ MSDN Code Gallery ASP.NET標準のセッ 自作セッションプ Azure AppFabric のセッションプロバイ ションプロバイダ ロバイダ キャッシュ ダ 概要 Code Galleryのセッ ASP.NET標準のセッ Access mdb等のプ Azure AppFabric ションプロバ゗ダを利 ションプロバ゗ダを利 ロバ゗ダを書き換 キャッシュを利用 用 用 える 利用スト Table Storage SQL Azure SQL Azure Azure AppFabric レージ キャッシュ 難点 ・タ゗ムゕウトした ・タ゗ムゕウトした ・タ゗ムゕウトし ・コストが高め セッションを自分で削 セッションを自分で削 たセッションを自 除する必要がある 除 分で削除する必要 ・SQL Azureに格納す ・Azure向けのプロバ がある るよりも遅い ゗ダではないため、 コードがいびつになる タ゗ムゕウト セッションデー 小 ← コスト&性能 → 大 タを自分で削除
  • 43.
    © 2011 MicrosoftCorporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.