Yii2 framework backup
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

2.0 KiB

Pamięć podręczna stron

Pamięć podręczna stron odnosi się do zapisu zawartości całej strony po stronie serwera. Kiedy zostanie ona ponownie wywołana, zawartość zostanie wyświetlona od razu z pamięci podręcznej zamiast generować ją ponownie od podstaw.

Pamięć podręczna stron jest obsługiwana przez filtr akcji yii\filters\PageCache. Poniżej znajdziesz przykładowy sposób użycia w klasie kontrolera:

public function behaviors()
{
    return [
        [
            'class' => 'yii\filters\PageCache',
            'only' => ['index'],
            'duration' => 60,
            'variations' => [
                \Yii::$app->language,
            ],
            'dependency' => [
                'class' => 'yii\caching\DbDependency',
                'sql' => 'SELECT COUNT(*) FROM post',
            ],
        ],
    ];
}

W powyższym przykładzie kod zakłada użycie pamięci tylko dla akcji index - zawartość strony powinna zostać zapisana na maksymalnie 60 sekund i powinna różnić się w zależności od wybranego w aplikacji języka. Dodatkowo, jeśli całkowita liczba postów w bazie danych ulegnie zmianie, zawartość pamięci powinna natychmiast stracić ważność i zostać pobrana ponownie.

Jak widać, pamięć podręczna stron jest bardzo podobna do pamięci podręcznej fragmentów. W obu przypadkach można użyć opcji takich jak duration (czas ważności), dependencies (zależności), variations (warianty) oraz enabled (flaga aktywowania). Główną różnicą tych dwóch przypadków jest to, że pamięć podręczna stron jest implemetowana jako filtr akcji, a pamięć podręczna fragmentów jako widżet.

Oczywiście nic nie stoi na przeszkodzie, aby używać pamięci podręcznej fragmentów jak i zawartości dynamicznej w połączeniu z pamięcią podręczną stron.