Azureで実行するMVC4アプリケーションの場合、セッションを同じ場所にあるキャッシュに保存します。マイクロソフトが提供するこのハウツーで説明されているように。
2つの小さなインスタンスを実行しましたが、すべてが正常に機能しているようです。アプリケーションにログインできますが、アプリケーション内を閲覧してもログインしたままになります。したがって、セッションは両方のインスタンスで機能しているようです。
ただし、セッションデータを更新すると、次のようになります。
HttpContext.Current.Session["someVar"] = "new value";
その変更は、その特定のリクエストを処理するインスタンスにのみ影響を与えるようです。アプリケーションを参照しているときに、初期値を取得することもあれば、更新された値を取得することもあります。
web.configに変更を加えていないので、Nugetパッケージによって追加されたときとまったく同じように見えます。
<sessionState mode="Custom" customProvider="AppFabricCacheSessionStoreProvider">
<providers>
<add name="AppFabricCacheSessionStoreProvider"
type="Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider, Microsoft.Web.DistributedCache"
cacheName="default"
useBlobMode="true"
dataCacheClientName="default" />
</providers>
</sessionState>
Azureキャッシュを使用するときに、別の方法でセッションを処理する必要がありますか、それともここで欠けているものですか?