Acelerar WordPress cacheo y optimización de bases de datos

Uno de los puntos de conversación más populares en la comunidad de WordPress es acelerar WordPress y optimizar páginas web. No creo que haya un blog de WordPress sin un artículo de "X Consejos para acelerar WordPress". No me malinterpretes, es algo bueno. Pero necesitamos mejores artículos sobre este tema en lugar de aburridos redondos de complementos.

Esto puede parecer otro tutorial de "consejos para acelerar WordPress", pero en esta serie de tres partes, analizaremos todos los aspectos de la optimización y la aceleración de su sitio web de WordPress..

Empecemos por lo más popular y, probablemente, lo más fácil: el almacenamiento en caché..

Caching en WordPress

Creo que es seguro decir que este es el tema más popular cuando se trata de acelerar WordPress. Por supuesto, esto se debe a los populares y fáciles de usar complementos de almacenamiento en caché de WordPress, pero también es una de las técnicas fundamentales para reducir la carga de la base de datos y acelerar los sitios web de WordPress..

Vamos a volver a los complementos de almacenamiento en caché, pero veamos los dos tipos de almacenamiento en caché: el almacenamiento en el servidor y el almacenamiento en el cliente..

Caché del lado del cliente

El almacenamiento en caché del lado del cliente es el tipo de almacenamiento en caché que hacen los navegadores de sus visitantes. Eso significa que cuando los visitantes visitan su sitio web, sus navegadores almacenarán datos de ciertas partes de sus páginas. Mientras que los navegadores guardan en caché algunos datos automáticamente (como el almacenamiento en caché de archivos JavaScript y CSS), podemos hacer algunos ajustes con la ayuda de .htaccess archivos.

Afinando el .htaccess archivo, me refiero a agregar el encabezado "Expires" en él. Es posible que haya escuchado el término "aprovechar el almacenamiento en caché del navegador" porque se usa comúnmente en los tutoriales de "optimización de sitios web" y es un criterio de alta prioridad en el servicio Google PageSpeed.

Afortunadamente, no tenemos que crear estos encabezados, ya que hay un montón de códigos listos para ser "prestados" en la web. Me gusta el de HTML5 Boilerplate, donde los encabezados están divididos por categorías de tipos de archivos:

# ------------------------------------------------- ----------------------------- # | Vence encabezados | # ------------------------------------------------- ----------------------------- # Servir recursos con encabezados de vencimiento a futuro lejano. # IMPORTANTE: si no controla el control de versiones con la memoria caché basada en nombres de archivos #, considere reducir los tiempos de caché a algo así como una semana.  ExpiresActive en ExpiresDefault "access plus 1 month" # CSS ExpiresByType text / css "access plus 1 year" # Intercambio de datos ExpiresByType application / json "access plus 0 seconds" ExpiresByType application / ld + json "access más 0 segundos" ExpiresByType application / vnd .geo + json "acceso más 0 segundos" ExpiresByType application / xml "acceso más 0 segundos" ExpiresByType text / xml "acceso más 0 segundos" # Favicon (¡no se puede cambiar el nombre!) e imágenes del cursor ExpiresByType imagen / x-icono "acceso más 1 semana "# componentes HTML (HTC) ExpiresByType text / x-component" access plus 1 month "# HTML ExpiresByType text / html" access plus 0 seconds "# JavaScript ExpiresByType application / javascript" access plus 1 year "# Archivos de manifiesto ExpiresByType application / manifest + json "acceso más 1 año" Aplicación ExpiresByType / x-web-app-manifest + json "acceso más 0 segundos" ExpiresByType text / cache-manifest "acceso más 0 segundos" # Media ExpiresByType audio / ogg "acceso más 1 mes "ExpiresByType image / gif" acceso plu s 1 mes "ExpiresByType image / jpeg" access plus 1 mes "ExpiresByType image / png" access plus 1 mes "ExpiresByType video / mp4" access plus 1 mes "ExpiresByType video / ogg" access plus 1 month "ExpiresByType video / webm" access más 1 mes "# aplicaciones web ExpiresByType / atom + xml" acceso más 1 hora "aplicaciones ExpiresByType / rss + xml" acceso más 1 hora "# fuentes web ExpiresByType aplicación / font-woff" acceso más 1 mes "ExpiresByType aplicación / fuente -woff2 "acceso más 1 mes" ExpiresByType application / vnd.ms-fontobject "acceso más 1 mes" ExpiresByType application / x-font-ttf "acceso más 1 mes" ExpiresByType font / opentype "acceso más 1 mes" ExpiresByType image / svg + xml "acceso más 1 mes"  

Coloque estas líneas de código en su .htaccess archiva y eres bueno para ir!

Almacenamiento en el servidor

En lo que respecta al almacenamiento en caché del lado del servidor en WordPress, podemos hablar de cuatro tipos principales de almacenamiento en caché: almacenamiento en caché de páginas, almacenamiento en caché de bases de datos, almacenamiento en caché de objetos y almacenamiento en caché de códigos de operación (código de operación). Sourav Kundu explica esto en su artículo en WP Explorer, pero recapitulemos:

  1. Page Caché: En esencia, WordPress produce sus páginas consultando las bases de datos y cargando los resultados. Sin embargo, el almacenamiento en caché de la página almacena cada página como archivos HTML en el almacenamiento local del servidor (disco duro o RAM) y sirve los archivos HTML correspondientes a sus páginas cada vez que sus visitantes visitan su sitio web..
  2. Caché de la base de datos: Si bien las bases de datos son el "cerebro" de un sitio web de WordPress donde se almacenan todos los datos, no es muy eficaz cuando WordPress realiza la misma consulta sin alterar una y otra vez en cada página y para cada visitante. El almacenamiento en caché de la base de datos guarda y sirve los resultados de estas consultas, y actualiza los resultados cuando se realiza una consulta de modificación.
  3. Caché de objetos: Esta es una API interna de WordPress que permite que los complementos almacenen datos de consultas costosas en la memoria. Es un poco irrelevante para nuestra serie, tal vez lo veremos en otro tutorial en el futuro..
  4. Opcode Caching: Al igual que agrega harina, agua, huevos, azúcar y otras cosas cada vez que hornea un pastel, los códigos en sus archivos PHP son instrucciones para "compilar" y hacer sus solicitudes. Opcode caching es el tipo de caché que almacena el código compilado, acelerando el proceso considerablemente.

Plugins de WordPress en caché

Nuestros capítulos principales son los aspectos de acelerar WordPress, por lo que podría estar fuera de tema revisar los complementos. Sin embargo, es una buena idea hablar sobre un par de complementos en cada capítulo. En cuanto al almacenamiento en caché, sé que ya conoces los dos complementos más populares:

  1. WP Super Cache: Este es el complemento de almacenamiento en caché más popular para WordPress, con más de 6 millones de descargas y una calificación de 4.2 estrellas mientras escribo este artículo. En pocas palabras, WP Super Cache funciona generando archivos HTML estáticos de sus páginas y actualizándolos con un intervalo que usted establezca (una hora por defecto). Esto funciona como magia fuera de la caja incluso en hosts compartidos, pero puede no ser suficiente para sitios web de alto tráfico.
  2. W3 Total Caché: Siendo el segundo complemento más popular con casi 4 millones de descargas y una calificación de 4.5 estrellas, W3 Total Cache es el tipo de complemento más adecuado para sitios web de alto tráfico que se ejecutan desde un VPS o un mejor entorno de alojamiento. Con su amplia gama de configuraciones y soporte para las opciones de almacenamiento en caché de alto rendimiento, podría ser la mejor solución para usted si sabe lo que está haciendo. Sin embargo, si no está familiarizado con la jerga en la configuración, puede usarla fuera de la caja y no cambiar ninguna opción, o puede romper su interfaz de usuario..

Optimizando la base de datos en WordPress

Las bases de datos son el "cerebro" de su sitio web: almacenan los datos valiosos que usted muestra en sus páginas. Los sitios web HTML estáticos almacenan sus datos dentro de las páginas, pero los sistemas de administración de contenido tienen que basarse en bases de datos (SQL, NoSQL, XML, JSON y otros) para almacenar nuestros datos. WordPress no es diferente: utiliza MySQL para almacenar el contenido estático y dinámico junto con la información de su sitio web, la configuración de WordPress, los detalles del usuario, etc..

Las bases de datos son un estándar poderoso para mantener, servir y alterar sus datos, pero si los usa mal y olvida mantenerlos, pueden obtenerlos. gordo y hinchado. Y como cualquier otro software, WordPress también necesita mantenimiento. WordPress no acumula demasiada información en la base de datos, pero eso no significa que no ralentizará su sitio web.

Debe mantener un ojo en las revisiones de sus publicaciones, la basura de las publicaciones, las páginas, los comentarios, etc., y cualquier otro tipo de datos "obsoletos". Y de vez en cuando, debe verificar su "base de datos de base de datos", que a menudo se compara con la desfragmentación del disco duro o el cambio de aceite de su automóvil.

Es posible mantener todo esto manualmente: puede vaciar su papelera, deshabilitar la función de "revisiones", eliminar comentarios de spam y optimizar la sobrecarga de la base de datos iniciando sesión en phpMyAdmin, pero esa no es una técnica optimizada para la optimización de la base de datos. En su lugar, puede utilizar un complemento de WordPress para hacer todo el trabajo.

Hay más que unos pocos complementos que le permiten optimizar su base de datos con un solo clic o incluso automáticamente. La que más me gusta es WP-Optimize: Limpia y optimiza automáticamente su base de datos sin ningún problema.

WP-Optimize enumera sus principales características de la siguiente manera:

  • Eliminación de revisiones de postes obsoletos
  • Eliminación de comentarios obsoletos no aprobados y spam
  • Eliminación de comentarios desechados.
  • Eliminación de metadatos de Akismet de los comentarios.
  • Eliminación de otros metadatos obsoletos de los comentarios
  • Compatible con dispositivos móviles, ahora puede optimizar su sitio sobre la marcha
  • Eliminación de todos los trackbacks y pingbacks
  • Limpieza de mensajes de borrador automático
  • Eliminación de opciones transitorias
  • Despeja la papelera
  • Limpieza automática de todas las opciones integradas (también usa retención si está habilitado)
  • Capacidad para mantener el número seleccionado de datos de semanas al limpiar
  • Opción para agregar o eliminar el enlace en la barra de administración de wp.
  • Habilitar / Inhabilitar horarios semanales de optimización.
  • Aplique los comandos de optimización nativos de WordPress MySql en sus tablas de base de datos sin phpMyAdmin o cualquier consulta manual.
  • Mostrar estadísticas de la tabla de base de datos. Muestra cuánto espacio se puede optimizar y cuánto espacio se ha despejado.
  • Habilitado solo para administradores.

Asegúrese de revisar otros complementos de optimización de base de datos, pero no descuide el mantenimiento de su base de datos.

A la parte 2

En la siguiente parte de la serie, veremos los aspectos de compresión y minimización y utilizaremos CDN para hacer que su sitio web de WordPress sea más rápido..

¿Qué piensas acerca de acelerar WordPress? Comparte tus pensamientos a continuación en la sección de comentarios. Y si te ha gustado el artículo, no olvides compartirlo..