Análisis comparativo y detallado de complementos de almacenamiento en caché para WordPress


Hay muchos complementos de almacenamiento en caché con una amplia gama de parámetros y funciones; sin un análisis cuidadoso es imposible tomar una decisión competente . Después de navegar por Internet, no encontré ninguna comparación realmente normal. Solo hay publicaciones únicamente para atraer la atención: descripciones de complementos. Lo común son los pulsos de SEO, por así decirlo. Incluso vi un intento de realizar un análisis comparativo de los tres complementos, pero no se dio nada más que medir la velocidad de descarga a través del servicio en línea. Pero cómo se organiza todo dentro, no se dice qué influyen las optimizaciones. Después de todo, cada sitio es individual, aún necesita un ajuste fino, debe comprender el principio de funcionamiento para la elección óptima.

Este artículo fue creado simultáneamente con la creación de material , cuyo énfasis está en el uso de resultados de análisis. Aquí quiero compartir más detalles y métodos de este análisis con personas sofisticadas y hermanos en la tienda.

Principios


WordPress consta de muchos scripts PHP. Cada vez que accede al sitio (servidor), se ejecutan parte de los scripts y el resultado se genera en forma de página HTML. La idea principal de la optimización es ahorrar tiempo al emitir un resultado inmediatamente terminado para contenido que rara vez cambia.

Debido a la urgencia del problema, muchos complementos de caché ya se han escrito y aparecen nuevos. Además, nunca quiero pagar demasiado, por lo que se realizó un análisis comparativo de solo soluciones gratuitas y shareware.

Se destacan las principales propiedades que debe tener el complemento para garantizar el almacenamiento en caché de alta calidad:

  • Caché del servidor (caché del lado del servidor)
    • Tiempo de carga de la página
      Uno de los parámetros más importantes. Cuanto más corto sea el tiempo, más rápido recibirá la respuesta el cliente. Por supuesto, puede elegir un complemento con mucho tiempo, pero luego con altas cargas en el servidor tendrá que aumentar el rendimiento del hardware, y estos son costos que podrían haberse evitado.
    • Método de almacenamiento en caché
      Máxima conservación de todos los objetos HTML, JS, CSS preparados, preferiblemente también en estado comprimido, para ahorrar tiempo de procesamiento en el servidor y aumentar la velocidad de salida.

  • Caché del cliente
    • Al emitir el resultado, es posible controlar el caché del navegador del cliente. Cuando se activa, una solicitud repetida al servidor ni siquiera llegará, lo que afecta favorablemente su rendimiento. Se indica en forma de valores TTL (Time To Live) para cada tipo de objeto (HTML, CSS, JS, Imágenes, ...). Para objetos críticos, los valores son pequeños o iguales a 0.

  • Optimizar
    • Combinar
      Cargando un JS común (o CSS) en lugar de varios, como cada acceso adicional al servidor es costoso. Esto también se indica directamente mediante la Prueba de velocidad de la página de Google .
    • En línea (inclusión)
      El contenido del CSS se inserta en el HTML, lo que finalmente reduce la cantidad de llamadas al servidor. CSS es mejor incluir porque En la práctica, es difícil dividirlo en partes necesarias y no en partes.
    • Posponer (descarga retrasada)
      Retraso en la carga de scripts JS que no afectan la visualización inicial de la página. También la métrica más importante que afecta la velocidad de carga de la página para el usuario. JS es mejor posponer que incluir directamente en HTML ya que Por lo general, son simples de separar y la inclusión implicará un aumento en el volumen de HTML, lo que puede llevar a la carga en varias iteraciones, lo que equivale a la aparición de consultas adicionales.
    • Minify
      El contenido HTML, JS y CSS a menudo tiene partes adicionales, como espacios, saltos de línea y comentarios. Es mejor eliminar todo esto para reducir aún más el tamaño de los objetos.
    • Comprimir
      Compresión de datos utilizando el algoritmo GZip (Deflate) para reducir la cantidad de datos transferidos. Porque HTML, JS y CSS son esencialmente formatos de texto, se comprimen bien.

  • Administrar
    • Actualizar (actualizar)
      En el caso de que el objeto solicitado haya cambiado (por ejemplo, se ha agregado un nuevo artículo), el objeto en la memoria caché debe volver a crearse; de ​​lo contrario, se enviará información irrelevante a los usuarios. Los buenos complementos están configurados para actualizar automáticamente el caché en los eventos más obvios. Y siempre debe ser posible vaciar todo el caché manualmente. Es como una parada de grúa en un tren, muy rara, pero necesaria.
    • Excluir (agregar excepciones)
      A veces es necesario excluir algunos objetos y páginas del almacenamiento en caché para solucionar problemas. Debe haber suficiente control sobre esto.

Comparación de complementos


Para compilar la lista real bajo investigación, la selección de complementos se realizó a través del conocido wordpress.org con una búsqueda por las palabras caché y muestras de las primeras 140 (10 páginas) adecuadas. Resultó 24.

Por cierto, si cree que algún complemento valioso no está en la lista, escriba los comentarios, los agregaré al análisis más adelante.

Metodología


  • Todas las pruebas se llevaron a cabo en la misma página HTML que contiene CSS, JS y varios objetos multimedia para cubrir la gama más general de tipos.
  • Se realizaron verificaciones de funcionalidad para cada criterio de lo anterior y se resumen en una tabla.
  • A cada criterio se le da el peso de la importancia de influir en la puntuación general (son visibles en la tabla detallada adjunta).
  • La medición del tiempo de carga de la página se realizó primero sin optimización, luego se realizó una medición con cada complemento y se realizó una comparación relativa de los tiempos. Esto garantiza una independencia suficiente de la velocidad de alojamiento.
  • El medio ambiente es el más reciente:
    • WordPress 4.9.8,
    • PHP 7.2.10 con almacenamiento en caché habilitado (OpCache),
    • MariaDB (MySQL) 10.3.9,
    • Apache 2.4.35.


Cada criterio se verificó utilizando el navegador Chrome:

  • En la sección de depuración, al presionar F12 en la sección Red, los tiempos de las diferentes etapas de carga y los encabezados HTTP de las respuestas del servidor son claramente visibles para verificar el control y la compresión de la memoria caché del navegador. También puede ver la unión de CSS y JS en uno o más archivos.
  • Mediante el uso de Ver código fuente de la página, en el botón derecho, el análisis del contenido devuelto se realizó sobre la inclusión de CSS, la calidad de la minificación (solo HTML, JS, CSS) y los signos de carga demorada de los scripts JS (los atributos diferidos o asíncronos deben estar presentes en la descripción de la etiqueta de enlace del script).
  • La carga demorada de JS también se verificó para mantener la salud del sitio, ya que La prueba de velocidad de la página de Google puede mostrar que todo está bien y que los scripts no funcionan.

Resultados


El resultado principal del análisis es una tabla XLSX detallada en la que puede clasificar, filtrar y ver cómodamente la metodología para calcular los pesos finales. También contiene notas sobre los detalles del complemento al evaluar cada criterio.

A cada complemento se le asignan roles de acuerdo con los resultados de la prueba para la conveniencia de comprender el espectro de cobertura de las propiedades requeridas.

A continuación se resumen los resultados de comparación para comprender la imagen general y la conveniencia.
Plugin
Papel
Puntuación
Total
Caché del servidor
Caché del cliente
Optimizar
Administrar
Caché LiteSpeed ​​+
Hyper Cache Extended +
Optimización automática +
Acelerar - Navegador
Almacenamiento en caché
(Paquete)
Lleno
96%
98%
71%
100%
100%
Brisa
1.0.10
Lleno
93%
95%
71%
97%
75%
Caché de WordPress
y CDN Plugin +
Optimización automática
(Paquete)
Lleno
90%
98%
100%
83%
75%
Optimización automática +
Habilitador de caché +
Acelerar - Navegador
Almacenamiento en caché
(Paquete)
Lleno
88%
98%
71%
83%
100%
W3 caché total
0.9.7
Lleno
84%
55%
100%
100%
100%
Caché de WordPress
y CDN Plugin
1.5.04
Lleno
82%
98%
100%
67%
75%
Caché LiteSpeed ​​+
WP Caché más rápido
(Paquete)
Lleno
79%
50%
71%
100%
100%
WP Rocket
3.2.0.1
Lleno
76%
50%
71%
95%
100%
WP velocidad de la luz
2.3.2
Lleno
70%
50%
71%
83%
100%
Caché de Yasakani
2.0.4
Lleno
64%
98%
0%
53%
75%
Página de colibrí
Optimización de la velocidad
1.9.2
Optimizar
53%
48%
71%
50%
100%
WP Caché más rápido
0.8.8.6
Lleno
52%
50%
71%
47%
100%
Habilitador de caché
1.3.1
Caché del servidor
48%
95%
0%
20%
100%
Caché LiteSpeed
2.6.1
Optimizar
47%
2%
71%
70%
100%
Script de caché para Wordpress (sin formato)
2,06
Caché del servidor
47%
98%
0%
20%
50%
Optimización automática
2.4.1
Optimizar
44%
2%
36%
73%
100%
Caché accionada
1.2.2
Lleno
44%
50%
71%
30%
100%
Hyper cache
3.3.7
Caché del servidor
43%
95%
0%
10%
100%
Hyper Cache Extended
1.6.3
Caché del servidor
43%
95%
0%
10%
100%
Caché simple
1.6.4
Caché del servidor
43%
95%
0%
10%
100%
Caché super estática
3.3.5
Caché del servidor
43%
95%
0%
10%
100%
WP Super Cache
1.6.4
Caché del servidor
43%
95%
0%
10%
100%
Velocidad rápida minify
2.3.5
Optimizar
36%
2%
0%
65%
100%
WP Performance
Amplificador de puntaje
1.9.2.1
Caché del cliente
31%
23%
71%
30%
0%
Paquete de refuerzo de velocidad
3.7.1
Optimizar
27%
0%
0%
52%
50%
Caché de cometa
170220
Lleno
27%
25%
0%
30%
100%
Acelerar - Navegador
Almacenamiento en caché
1.0.2
Caché del cliente
23%
0%
71%
30%
0%
Caché Gator
2.1.7
Caché del servidor
20%
48%
0%
0%
100%
Cachify
2.2.4
Lleno
16%
25%
0%
10%
50%
Control de caché
2.2.2
Caché del cliente
3%
0%
29%
0%
0%

Conclusión


La tabla resultante le permite seleccionar complementos de acuerdo con los criterios necesarios y seleccionar varias combinaciones para maximizar la cobertura de los criterios necesarios. En apoyo de 4 combinaciones fueron seleccionadas y probadas (paquete marcado en lugar de versión).

Las configuraciones específicas se describen en el material mencionado al principio del artículo.

  • Es mejor usar diferentes combinaciones de complementos en lugar de individualmente.
  • Una calificación general baja del complemento no es una señal de su inadecuación. Puede ser bueno en alguna funcionalidad particular.
  • Algunos complementos son incompatibles entre sí cuando se combinan.
  • Siempre debe verificar el funcionamiento correcto de la carga diferida de JS: algunos complementos deben configurarse adicionalmente y otros aún rompen el contenido. La tabla contiene comentarios sobre este tema.
  • Y asegúrese de verificar finalmente a través de la Prueba de velocidad de la página de Google (u otros medidores externos como PingDom y otros): en diferentes sitios puede haber diferentes resultados, porque la optimización de complementos puede comportarse de manera diferente.

Source: https://habr.com/ru/post/es426835/


All Articles