入力を考慮に入れてCodeIgniterページキャッシュを取得するにはどうすればよいですか?たとえば、ページネーションシステムがあるとします。キャッシュを有効にして、1ページ目に行くと、2ページ目(同じコントローラ)... CIキャッシュはページ1のコンテンツを返します。Codeigniterのページキャッシュは入力を考慮していませんか?
function my_controller() {
$this->output->cache(1);
$page = $this->input->post("page");
$data = getData($page);
$this->load->view('my_view', $data);
}
上記の例では、ページを正しくパンすることはできません。投稿された入力が変更されても、キャッシュされたページの読み込みが続けられます。
キャッシュシステムに$ _POSTデータを考慮し、それらをキャッシュの観点から異なる要求として扱うにはどうすればよいですか?
コンテンツは数日おきにしか変更されませんが、A LOTと呼ばれます。だから、私は定数処理/ db呼び出しを防ぐ方法を探しています。私は本質的に有効期限(3日)を設定するのが大好きで、コントローラーが同じ入力でヒットすると、すべての作業をやり直す代わりにキャッシュされたファイルを返します。 – VDH
dbサーバーの速度低下に問題がありますか?データベースサーバーは実行計画などを実行するので、ハードヒットしたクエリのキャッシュを保持する傾向があることに注意してください。問題が発生していない場合は、それだけの価値はありません。クエリがスカラでいっぱいでない場合、特にデータを取得するのはどのデータベースですか。 –
どのデータベーステクノロジを使用していますか? MySQL、PostgreSQL、SQL Server? –