0

いくつかの助けについてあなたに尋ねる必要があります。

Net2.0でWebアプリを実行しています。
オブジェクトの使用範囲が異なるため、オブジェクトに使用するストレージ(キャッシュ、セッション、ファイル)を尋ねたいと思います。いくつかのグループに分けることができます:
1)訪問者に直接関連するオブジェクト(たとえば、認証後に受信される訪問者に関する詳細)
2)すべての訪問者に使用されるオブジェクト、したがってその適用範囲(一部の初期データ、共通データ)

これらのオブジェクトのほとんどは、高価なWebサービスからデータを取得します。

それで、速度、メモリ、アクセシビリティ、そして他に何に注意すべきかを考えると、私の最良の選択は何ですか。

どんな助けでも大歓迎です。ありがとう、X。

4

3 に答える 3

2
  1. 訪問者に直接関連するオブジェクトは に格納する必要がありますがSession、過度に使用しSessionたり多くのユーザーが使用したりすると、スケーラビリティの問題が発生する可能性があります。

  2. 訪問者ごとに共有されるオブジェクトはCache、メモリを再利用できるように頻繁にアクセスしないと範囲外になるように格納する必要があります (依存関係の追加のインセンティブは言うまでもありません)。オブジェクトが最後にアクセスされてからどれだけ時間が経過したかに関係なく、オブジェクトにすぐにアクセスできる必要があることがわかっているシナリオでは、そのオブジェクトを に格納する必要がありますApplication

于 2008-11-20T21:48:46.077 に答える
1

アイテム 1 - ユーザーごとのセッションが最適ですが、スケーリングの問題や Web ファームの場合の考慮事項があるため、アイテムの数を必ず制限してください。

項目 2 - 必要なものに応じて、これはキャッシュまたはアプリケーション レベルの項目であり、有効期限の必要性などに応じて追加します。主な違いは、キャッシュには有効期限があり、それを削除できる使用項目があることです。いつもそこにあるもの。

全体として、スレッドの安全性について心配する必要があるため、Web アプリケーションでは AGAINST ファイルを強くお勧めします。

于 2008-11-20T21:48:26.653 に答える
0

訪問者ごとに相対的なオブジェクトは、Session に保存する必要があります。これは訪問者ごとに異なりますが、頻繁にフラッシュされる傾向があり、複数のサーバー環境に移行するとスケーリングが不十分になります。

アプリケーション全体に関連するオブジェクトは、ASP.NET キャッシュに格納する必要があります。

于 2008-11-20T21:49:16.603 に答える