0

Azure Reporting のレポート ビューアーで asp.net webrole プロジェクトを使用しています。
最初に、「ASP.NET セッションの有効期限が切れました」という問題に直面しました。これは、AsyncRendering を false に設定し、web.config で sessionState timeout="120" mode="InProc" cookieless="true" を設定することで解決しました。
ただし、単一のインスタンスでプロジェクト runnign をデプロイすると、すべて正常に動作します。しかし、プロジェクトを複数 (2 つ) のインスタンスに展開すると、一部の画像 (グラフ、ゲージなど) が読み込まれません。ただし、不足している画像を右クリックすると、コンテキスト メニューから画像を読み込むことができます。
何か案は ?私にとってはタイミングの問題のようです。

4

1 に答える 1

0

これは、InProc セッション状態を使用しているためです。ロード バランサーを制御できないため、あるインスタンスからページを読み込んでいて、別のインスタンスから画像を読み込んでいる可能性があります。これは、セッションが両方のインスタンスで異なることを意味します。

複数のインスタンスを操作する場合は、セッションを InProc に保存するのではなく、分散ストレージ (テーブル ストレージ、SQL Azure、AppFabric キャッシュなど) を選択する必要があります。これにより、すべてのインスタンスが同じセッション データを使用できるようになります。

例: Windows Azure キャッシュ用のセッション状態プロバイダー

于 2012-06-13T14:35:18.003 に答える