CodeZine(コードジン)

特集ページ一覧

ASP.NET Universal Providersによるセッション管理

Windows Azure 新機能チュートリアル(11)

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2012/03/05 14:00
目次

Windows Azure環境での実行

 開発環境で簡単な動作確認が取れたところで、アプリケーションをWindows Azure上に配置します。

[1]接続文字列を変更する

 Windows Azure環境からは、SQL Azureに接続するよう構成設定を行います。図4のからコピーした接続文字列を、connectionStrings要素配下、add要素のconnectionString属性部分に貼り付けます。パスワード部分は適宜修正してください。ASP.NET Universal ProvidersはSQL Azureへの接続に、複数のアクティブな結果セット(注7)利用します。これを有効にするために「MultipleActiveResultSets=True」の追加も必要となります(リスト2)。

注7

 Multiple Active Result Sets(MARS)と呼ばれます。

リスト2 Web.configファイル
  <connectionStrings>
   …
    <!-- (1) 接続先の設定-->
    <add name="DefaultConnection" connectionString="Server=tcp:rmru2y6ldc.database.windows.net,1433;Database=database1;User ID=manager@rmru2y6ldc;Password=p@ssword55;Trusted_Connection=False;Encrypt=True;MultipleActiveResultSets=True"
      providerName="System.Data.SqlClient" />
  </connectionStrings>
  <system.web>

[2]アプリケーションを実行する

 アプリケーションを配置し実行します。複数インスタンスからセッション情報が共有されているか確認する意味からも、インスタンス数を複数(2程度)にして配置してみましょう。開発環境と同じように、正しくセッション情報が共有できているか確認してみてください(図8)。

図8 Windows Azure上での実行
図8 エミュレーター上での実行

[3]セッションデータの確認

 最後に、SQL Azureに接続し、セッション情報を確認してみましょう。SQL Azure管理ツールでデータベースにアクセスします。図3から、[データベース]-[管理]ボタンをクリックし、SQL Azure管理ポータルを開きます。Sessionsテーブルに、情報が格納されていることが確認できます(図9)。

図9 SQL Azure管理ツールでの確認
図9 エミュレーター上での実行
補足

 ASP.NET Universal Providersはセッション管理の他にも、メンバーシップ、ロール、プロファイルの各プロバイダーが含まれています。セッション管理と接続文字列を共用しているため、本稿の設定を行えば利用できるようになります。

まとめ

 今回、Windows Azure上でセッション管理する方法をいくつか紹介しましたが、いかがでしょうか。いずれも一長一短あり、要件によって選択基準が変わってくることと思います。また、ASP.NET Universal ProvidersやWindows Azureストレージなどは、カスタムセッション状態プロバイダーのソースが公開されています。これをベースにチューニングするなどの方法を取ることもできるでしょう。



  • LINEで送る
  • このエントリーをはてなブックマークに追加

修正履歴

  • 2012/03/06 23:45 1ページ目の表 サポートについて誤りを修正。また、サポートについて追記した。

バックナンバー

連載:Windows Azure新機能チュートリアル

もっと読む

著者プロフィール

  • WINGSプロジェクト statemachine(statemachine)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XM...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5