Soportando mucho tráfico en WordPress

8:30 0 Comments A+ a-

El problema en muchos casos (lo hemos visto más de una vez) viene cuando atraemos de alguna forma un gran volumen de tráfico a una landing page o artículo de un blog WordPress sin tener nuestro WordPress preparado para soportar el tráfico.
Vamos a comenzar desde el principio, cuando un visitante entra a una web o blog creada con WordPress (sin cache) se tiene que procesar el código PHP en el servidor cada vez que el visitante accede y esto lleva tiempo y se genera un consumo de recursos elevado.
Para blogs o páginas de lanzamiento con poco tráfico, un simple hosting y un sistema de caché en forma de plugin como WP SuperCache podría bastar para soportar el tráfico atraído, pero cuando mandamos grandes volúmenes de tráfico como 1.000 o 2.000 visitantes por segundo es necesario implementar otro tipo de soluciones a nivel servidor que nos ayudaran a mantener unos tiempos de carga muy bajos y además aguantar la carga sin caídas.
En este artículo vamos a describir una serie de soluciones que nos ayudaran a aguantar picos de tráfico en un blog WordPress, en la mayoría de los casos estas soluciones son óptimas para servidores VPS y servidores dedicados, no para hosting compartido.

Nginx Cache

Personalmente, Nginx es mi servidor web favorito (como alternativa a Apache); pero Nginx también puede funcionar de otra forma llamada “proxy inverso”.
Cuando Nginx funciona como proxy inverso puede funcionar como caché, guardando una copia estática de los sitios web y pudiendo servir esta copia mucho más rápido a los visitantes cuando solicitan el acceso a una web.
El consumo de recursos de Nginx al servir páginas estáticas cacheadas puede ser un 1% del consumo de Apache para servir la misma página sin cachear, eso sin contar la notable mejoría en la velocidad de carga para el visitante.
Nginx es el servidor web recomendado para un servidor VPS dado su bajo consumo de recursos.

Flexicache + Memcached

Se trata de una combinación de plugin para WordPress con un sistema de caché de objetos en memoria RAM a nivel servidor.
Flexicache es uno de los mejores plugins de caché que me he encontrado para WordPress, permite bajar de forma notable el consumo de recursos de WordPress; pero lo mejor de Flexicache es que tiene soporte nativo para guardar las paginas estáticas cacheadas en la memoria RAM utilizando Memcached, algo que pocos Plugins de caché para WordPress tienen.
Combinando Flexicache y Memcached conseguimos un rendimiento muy parecido al que conseguiríamos con Nginx Cache en cuanto a velocidad de carga, aunque el consumo de recursos es entre un 10% y un 20% más alto con Flexicache y Memcached.

Varnish Cache

Varnish Cache es lo que se viene denominando como un acelerador de aplicaciones web, aunque realmente se trata de un sistema de caché que se coloca como un proxy HTTP inverso para un servidor web como Apache.
Varnish es una de las mejores soluciones a la hora de soportar grandes cantidades de tráfico, ya que es capaz de alcanzar altas tasas de peticiones por segundo sin consumir demasiados recursos en el servidor.
El funcionamiento de Varnish como caché es muy simple: lo único que hace Varnish Cache es guardar copias estáticas del sitio web en la memoria del servidor, permitiendo servir las páginas sin consumir recursos en procesar PHP y con un mínimo retardo al servir peticiones a los visitantes.
Varnish Cache es la solución más efectiva para soportar grandes volúmenes de tráfico entrante, pero también es la solución más difícil de implementar y configurar.