La caché de páginas se refiere a guardar el contenido de toda una página en el almacenamiento de caché del servidor. Posteriormente, cuando la misma página sea requerida de nuevo, su contenido será devuelto desde la caché en vez de volver a generarlo desde cero.
El almacenamiento en caché de páginas está soportado por yii\filters\PageCache, un filtro de acción. Puede ser utilizado de la siguiente forma en un controlador:
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',
],
],
];
}
El código anterior establece que el almacenamiento de páginas en caché debe ser utilizado sólo en la acción index
; el
contenido de la página debería almacenarse durante un máximo de 60 segundos y ser variado por el idioma actual de la
aplicación; además, el almacenamiento de la página en caché debería ser invalidado si el número total de
artículos ha cambiado.
Como puedes ver, la caché de páginas es muy similar a la caché de fragmentos. Ambos soportan opciones
tales como duration
, dependencies
, variations
, y enabled
. Su principal diferencia es que la caché de páginas está
implementado como un filtro de acción mientras que la caché de fragmentos se hace en un widget.
Puedes usar la caché de fragmentos así como el contenido dinámico junto con la caché de páginas.
Found a typo or you think this page needs improvement?
Edit it on github !
Signup or Login in order to comment.