0

ユーザー権限のリストがあります。テーブルからすべてのデータを取得し、UserPermissionキャッシュに入れてから、 userIDLINQ を使用してフィルター処理することを考えています。

次回誰かがユーザー許可画面にアクセスしようとすると、キャッシュにデータがあり、ユーザー ID に基づいて必要なベースをフィルタリングして表示するだけです。

それを行うことでパフォーマンスはありますか?それとも、データベース/データ層でフィルタリングする方が速いですか?

4

2 に答える 2

1

ここでは2つの要素が関係しています

  1. LINQを介したデータのフィルタリングの速度
  2. SQLを介してデータをフィルタリングし、そのデータをデータストアからアプリケーションに返す速度

一般的に、データの小さなセットの場合、1。と2.の違いはごくわずかです。

結果が小さい大量のデータセットの場合、2。のパフォーマンスが向上します

結果が大きい大量のデータセットの場合、1。のパフォーマンスが向上します

しかしもちろん、この一般化はすべて環境とコードに依存するため、まったく役に立ちません。

于 2012-05-22T11:48:23.753 に答える
0

レイテンシ、パフォーマンス、古いデータを比較検討する必要があります。

ユースケースごとに常に異なります...

しかし、この種のものはすでに .net に組み込まれています - ASP.NET Authorization Providers を調べてください

于 2012-05-22T11:43:49.267 に答える