BookinglyTech News
Software

Grav 2.2 reduce a la mitad el arranque en frío y un 96% el uso de memoria

El CMS de archivos planos deja de compilar un archivo PHP por página y activa solo el índice perezoso en sitios de 1.000 páginas o más.

2 min de lecturaAlternativeTo0 vistas

Grav 2.2.0 cambia la forma en que reconstruye la caché de páginas: ya no escribe y compila un archivo PHP por cada una. Según las pruebas del proyecto, eso recorta aproximadamente a la mitad el tiempo de arranque en frío en instalaciones de 1.081 y 10.321 páginas, y en el sitio de 10.000 páginas las peticiones en caliente consecutivas bajan de 69,9 ms a 18,2 ms.

Qué cambia por dentro

El otro ajuste con más efecto es el índice de páginas perezoso, que ahora se activa solo en sitios de 1.000 páginas o más. El proyecto cifra en un 96% la reducción de memoria en sus pruebas. Traducido a la práctica: un sitio grande deja de cargar en memoria la estructura completa de contenido para servir la primera visita.

También ha tocado el guardado desde el panel de administración. Antes, guardar una página vaciaba la caché entera y la siguiente vista obligaba a reconstruirla. Ahora esa página se marca como modificada y solo se rehace lo necesario. En el sitio de un millar de páginas, el tiempo hasta la siguiente vista tras guardar pasa de 1.075 ms a 67,9 ms.

Las cifras son del propio proyecto, no de un tercero, y están medidas en instalaciones de prueba: conviene tomarlas como orden de magnitud antes de planificar una migración.

Grav es un CMS de archivos planos. No hay base de datos, el contenido vive en ficheros Markdown y el renderizado corre en PHP. Ese diseño le da portabilidad y copias de seguridad triviales, pero también es su punto débil cuando el árbol de páginas crece, porque cada petición paga el coste de indexar y compilar. Los tres cambios apuntan al mismo sitio.

Quién debería mirarlo

Para quien mantiene un sitio pequeño, la actualización es rutina. El interés está en instalaciones de cuatro o cinco cifras de páginas que en su día acabaron detrás de un proxy o de un generador estático precisamente por los tiempos de arranque. Si esos números se sostienen en producción, Grav vuelve a ser una opción defendible sin caché externa delante.

Queda por ver el comportamiento con escrituras concurrentes y con plugins que toquen la caché por su cuenta, que es donde suelen aparecer las regresiones cuando se cambia la política de invalidación.