1

これを行う簡単な方法はありますか?検索は機能しています...ページングは​​機能していますが、一緒ではありません

したがって、私にとって最も簡単な方法は、検索結果をキャッシュしてから、コントローラーでそのコレクションをページングするコレクションとして参照することです..それは理にかなっていますか?

または、高レベルからこれにどのようにアプローチする必要がありますか? (私は 10 年間の ASP.NET Web フォームから来ました)

4

1 に答える 1

1

検索結果をキャッシュすると、結果データのページングのパフォーマンスが向上しますが、メモリが消費されます。複数のユーザーが検索を行う場合、ユーザーごとに検索結果をキャッシュする必要があります。メモリに保持される可能性のあるデータ量によっては、これが実行できる場合とできない場合があります。(このようなキャッシュは、スライド/絶対有効期限を使用して短時間実行する必要があります。)

現在の結果ページにデータを提供する必要があるたびに検索を実行すると、CPU 負荷が高くなりますが、リクエスト間のメモリは消費されません。もちろん、ページ データの要求には、検索をやり直すことができるように検索パラメーターを含める必要があります。

これは、CPU とメモリのどちらに負荷をかけるかの通常の妥協点であり、どちらを選択するかはユーザー次第です。短いスライド有効期限 (1 分) で結果をキャッシュし、キャッシュされた結果が存在しない場合でも検索を再度実行できるようにします。

于 2013-01-28T22:33:24.023 に答える