¿Tu WordPress va lento? ¿Te gustaría que volase? Pues esta es la idea que he estado planteando desde hace unos días… Hace cosa de un año que comencé a montar blogs con WordPress bajo Varnish. Al principio iba bien pero configurarlo y mantener las máquinas es algo complejo, a parte de que no todo el mundo puede permitirse montar y mantenerlo. Así que, tras muchas vueltas, pruebas, testeo de plugins y demás, he conseguido poder montar un sistema que, de forma sencilla, permita cachear y mantener un WordPress con Varnish.
El sistema es sencillo… sólo hay que subir 2 plugins: uno de ellos es para purgar (limpiar) la caché de Varnish cuando alguien publica algo, comenta, edita… así, cuando el blog cambie, se regenera la caché y los usuarios ven las cosas nuevas y actualizadas; el otro plugin es algo más genérico y hace referencia a la gestión de la IP, ya que al ser un web-proxy siempre devuelve la misma IP y eso genera problemas con el spam y similares.
Una vez configurado esto, lo bueno es que se puede probar antes de ponerlo en producción. Simplemente te cambias la IP de tu fichero de host y compruebas si todo funciona correctamente. Una vez probado, se cambian las DNS del dominio y ya está, todo listo.
Una cosa buena también que tiene este sistema es que, si por lo que sea, el Varnish empezase a hacer e tonto o quieres dejar de usar el servicio, vuelves a poner tus DNS como antes, quitas los plugins y ya está, todo vuelve a la normalidad.
¿Te gustaría probarlo? Pues si te interesa puedes escribirme (si me adelantas el dominio en que lo quieres probar, mejor que mejor) y te escribo con todos los pasos. Por ahora vamos a dar una semana de pruebas a aquellos que lo quieras testear en su sitio (ya sea por fichero de host o en producción) y a partir de ahí valdrá 120 euros/año u 80 euros/semestre.
¿Qué cosas buenas tiene usar este sistema? Primero que tu sitio estará cacheado y que soportará picos de tráfico sin problema; que cuando un robots de búsqueda te visite verá que la web va rápida y te indexará más rápido; por norma general el tráfico SEO aumenta a las 4 semanas de usar este sistema… además, sigues teniendo el control de todo en todo momento.
Y para muestra, un par de pruebas… Las he realizado desde el sitio Web Page test, primero apuntando a la IP del servidor directamente y luego apuntando a la del servidor con Varnish. El sitio desde el que se han hecho las pruebas es París con conexión de Cable.
Enlaces a los resultados de la Prueba Directa y a la Prueba con Varnish.
Como detalle, que no lo he podido capturar al 100%, el sistema hace 2 peticiones, la primera normal, luego refresca y usa la caché del navegador, y luego vuelve a repetir lo mismo. En el caso del acceso duirecto, WordPress ha de generar completamente la página, que tarda aproximadamente unos 2,5 segundos. Luego, en cualquier caso, el refresco es rápido, y tarda muy poco. Cuando estos e hace con Varnish delante, la primera ocasión tarda lo mismo, pero cuando vaciamos la caché del navegador como ya no se genera la página, tarda tan sólo 1,5 segundos.
Directo | Varnish | |
lectura 1 | 2.575s | 2.765s |
caché 1 | 1.238s | 0.435s |
lectura 2 | 2.172s | 1.416s |
caché 2 | 1.245s | 0.315s |
En general, como los usuarios navegarán por las versiones de «lectura 2» (la lectura 1 sólo se ejecutará cuando haya contenido nuevo o se vacíe la caché), los datos muestran que el blog carga entre un 60% y un 75% más rápido. Os dejo con algunos otros gráficos:
En estos datos se ven los tiempos de respuesta que han obtenido mejor valoración en las 2 pruebas realizadas…
Aquí se muestra en una valoración simple los resultados que dan Google Page Speed y Yahoo! YSlow…
Y finalmente un checklist de todas las peticiones que se han relalizado…
En fin, creo que es bastante obvio que usar Varnish es una gran ventaja competitiva con respecto a los sitios que no lo tienen…
Otra prueba interesante es hacer un test de estrés. La idea es hacer crecer las peticiones simultáneas al sitio… el test lleva un 50% de visitas desde Dublín (IE) y un 50% de visitas desde Palo Alto (CA, US), hasta las 100 conexiones simultáneas. Las gráficas son bastante clarificadoras…
Enlaces a los resultados de la Prueba Directa y a la Prueba con Varnish. Creo que las gráficas hablan por sí solas…
Tiempos de carga por página:
Clientes | 15 | 31 | 51 | 70 | 85 | 100 |
Directo | 1.63s | 2.71s | 3.98s | 17.26s | 21.18s | 26.54s |
Varnish | 1.27s | 1.14s | 1.20s | 1.28s | 1.48s | 1.27s |
¿Te gustaría probarlo? Pues si te interesa puedes escribirme (si me adelantas el dominio en que lo quieres probar, mejor que mejor) y te escribo con todos los pasos. Por ahora vamos a dar una semana de pruebas a aquellos que lo quieras testear en su sitio (ya sea por fichero de host o en producción) y a partir de ahí valdrá 120 euros/año u 80 euros/semestre.
Deja una respuesta