RSS |

Blog de Omar

Just another WordPress weblog

Advertisement

Acelerar WordPress puede convertirse en toda una odisea debido a la gran cantidad de plugins que nos ofrecen esta utilidad, sin embargo hay que tener muchas cosas en cuenta antes de instalar cualquiera de estos plugins.

Comenzare por contar que hoy 30 de Abril del 2008 he decidido migrar mi antiguo WordPress 2.3.X a WordPress 2.5, lo hice porque:

- Siempre es bueno realizar el update correspondiente de cualquier software (pero no tomen esto al pie de la letra, es decir… antes de realizar cualquier update se debe testear el software o lo que se este actualizando para verificar compatibilidades, que todo funcione correctamente y no exista ningún problema con el update).

Nota: La migración en servidores críticos es una tarea muy rara (sino miren cuantos servidores aun usan PHP 4, MySQL 4 o peor aun MySQL 3)

- El principal motivo porque decidí migrar se debe a que… QUERIA APRENDER A USAR WORDPRESS 2.5 y ver las nuevas características que trae esta nueva versión.

- Y otro motivo no menos importante es que tenia tiempo (para los que antes han visitado mi blog he migrado de youta18.awardspace.com a http://omar.homelinux.com/wordpress y aproveche para instalar la nueva versión de WordPress).

Antes de querer acelerar la carga de nuestro WordPress e instalar algún plugin, debemos hacernos la pregunta del millón: “¿necesito en realidad acelerar la descarga?”, si mi blog es de aquellos que tiene 15 mil visitas por día y existen picos grandes de visitantes pues es obvio que necesitamos acelerar la descarga y mejorarla aplicando alguna técnica de cache; pero si mi blog solo tiene 100 visitas diarias la verdad no es imprescindible acelerar la descarga (a menos que nuestro servidor tenga un ancho de banda muy pobre).

Después de esta pequeña introducción, comencemos:

COMPRENSION G-ZIP

WordPress usaba este método para reducir el ancho de banda de nuestro servidor. La idea es algo simple, lo que hace WordPress es comprimir la pagina que ha solicitado el cliente y luego el cliente (el browser) descomprime la pagina enviada.

Lo que permite esto es ahorrar ancho de banda porque la información enviada es mas pequeña, esto también ayudaba a que las paginas generadas por wordpress carguen mas rápido ya que eran mas pequeñas.

Por lo general es algo que todos los que tienen un Blog en WordPress usaban, un momento…. usaban? Ya no se usa? SI, NO YA NO SE USA.

La nueva versión de WordPress, WordPress 2.5, ya no trae esta opción; ya no se puede comprimir los archivos que se enviaran al cliente.

Nota: Hay una opción para comprimir las paginas de WordPress, tendrías que crear el archivo .htaccess (si ya existe solo agrega la línea) y agregar la siguiente línea:

php_value output_handler ob_gzhandler
 

Sin embargo este método al parecer traer muchos problemas y los administradores de WordPress reportan errores, así que no aconsejo usarlo.

¿Y porque ya no existe la COMPRENSION G-ZIP en WordPress 2.5?

Pues la comprensión tiene un problema, la sobrecarga del procesador.

Así como lo escuchas, imaginemos que nuestro Blog tuviera 250 000 visitas diarias (algún día mi blog tendrá ese numero de visitas?, jajajaja), cada vez que algún cliente solicite la página el procesador tendrá que comprimir la página a enviar y repetir esta tarea cada vez que se solicite la página.

Debemos ver esto desde dos puntos de vista, como Administrador del Servidor y como Cliente del servidor.

Quizás la mayoría va a ver esto como el Cliente del servidor, si tú eres de los que ha alquilado su hosting en algún servidor estas dentro de este grupo.

Como “Cliente del Hosting” no te interesa que el servidor use más o menos procesador; además tu pagas para usar el hosting, cierto? Pues… que comprima todas las veces que tenga que comprimir.

Por otro lado si eres el sacrificado Administrador del Servidor, claro que te importa que se ahorre el uso innecesario del procesador, además no solo está corriendo un Blog sino están corriendo 30 Blogs, 5 aplicaciones JAVA, 3 Bases de Datos distintas, etc etc y ahorrar el procesador es una muy buena idea.

Así que pensando en esto (solo estoy especulando con la suposición arriba descrita) se ha decidido quitar la comprensión G-ZIP de WordPress.

PLUGINS DE CACHE

Existen varios plugins que aceleran la carga de WordPress, analizaremos y compararemos de manera concisa cada uno de ellos.

Pero algo que se debe de tener en cuenta es que por lo general estos plugins no funcionan cuando wordpress no esta instalado en la raíz del servidor; por ejemplo si tu tienes tu wordpress instalado en http://www.tupagina.com (funciona muy bien), pero si lo tienes instalado en http://www.tupagina.com/wordpress/ no va a funcionar.

Intente adaptar el plugin para que funciione cuando wordpress no esta en la raíz del URL, como modificando el .htaccess pero no funciono en ningún servidor, así que lo mejor y mas aconsejable es tenerlo instalado en la raíz de la dirección URL.

WP-CACHE
Instalación y descarga en el siguiente link: Inst. y descarga de WP-CACHE

Este es el primer plugin de WordPress que salio y quizás el mas popular.

Funciona de la siguiente manera:

WordPress es un sistema que cambia muy poco, verdad? Es decir si diario colocamos una o dos nuevas noticias el resto del día el servidor se la pasara repitiendo la misma consulta sql una y otra vez.

Aprovechando esto, seria mejor que la pagina dinámica creada por WordPress sea almacenada como una pagina estática (solo html) y cada vez que se solicite una pagina web se muestra la pagina HTML; después de cierto tiempo (según lo configuremos) o cuando se haga algún cambio en el Blog se volverá a crear una nueva pagina HTML para el cache.

Pero WP-CACHE tiene una importante carencia, no es compatible con la comprensión G-ZIP nativa de WordPress 2.3.

Entonces… lo que ocurre es lo siguiente, al servidor se le solicita una pagina dinámica, este la genera y almacena una pagina html en wp-content/cache y la envía al cliente (browser) que solicito la pagina, la próxima vez ya no genera la pagina dinámica sino que la coge del cache y la envía al cliente, todo esto sin comprimir lo que se envía.

Pero debemos solucionar este problema de comprensión, verdad? Pues para eso salio WP-SUPER CACHE.

WP-SUPERCACHE
Instalación y descarga en el siguiente link: Inst. y descarga de WP-SUPERCACHE

Este plugin esta basado en WP-CACHE e implementa las carencias que tiene WP-CACHE.

Para ser mas exactos WP-SUPERCACHE incluye a WP-CACHE; es decir cuando WP-SUPERCACHE esta trabajando, WP-CACHE también lo esta haciendo.

Como requisito imprescindible para que funcione WP-SUPERCACHE se debe tener habilitado habilitado fancy permalinks.

El WP-SUPERCACHE solo sirve a los visitantes que no dejan comentarios o que no son usuarios registrados y el resto de usuarios son servidor por WP-CACHE.

Ambos mecanismos cuentan con su propia cache.

El directorio de almacenamiento de WP-CACHE es: wp-content/cache

El directorio de almacenamiento de WP-SUPERCACHE es: wp-content/cache/supercache

Para que WP-SUPERCACHE haga su trabajo lo que hace es redireccionar las peticiones con archivo .htaccess. Este archivo .htaccess que se encuentra en la raíz de la instalación de wordpress es modificado cuando se instala WP-SUPERCACHE y se le agrega la siguiente información:

RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} !.*s=.*
RewriteCond %{HTTP_COOKIE} !^.*(comment_author_|wordpress|wp-postpass_).*$
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz -f
RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz [L]RewriteCond %{QUERY_STRING} !.*s=.*
RewriteCond %{HTTP_COOKIE} !^.*(comment_author_|wordpress|wp-postpass_).*$
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html -f
RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html [L]

Entonces ¿es WP-SUPERCACHE la solución? Pues eso depende de nuestro servidor.

Otra vez debemos ver esto como Administrador del servidor o como cliente.

Muchos de los Administradores habilitan la opción SAFE MODE (modo seguro) en PHP para darle mayor seguridad al servidor, verdad? Pues este plugin no funciona con Safe Mode porque al momento de instalar el plugin se crean las carpetas cache (wp-content/cache) y supercache (wp-content/cache/supercache), estas carpetas tienen como dueño a Apache, como podemos ver aquí:

Si tu hosting no trabaja con SAFE MODE pues WP-SUPERCACHE es la solución, realiza el cache correspondiente y comprime los archivos.

Pero si tu hosting trabaja con SAFE MODE …. debemos buscar otra alternativa.

1 Blog Cacher
Instalación y descarga en el siguiente link: Inst. y descarga de 1 Blog Cacher

El hosting que tengo alquilado trabaja con SAFE MODE así que no puedo usar WP-SUPERCACHE y solo lo he probado en un servidor local (y funciona muy bien); la solución a esto es 1 Blog Cacher.

Este plugin no ofrece todas las configuraciones que ofrece WP-SUPERCACHE pero cumple con lo principal, es decir… realiza el cache de las paginas dinámicas y las comprime.

Y lo mejor es que funciona con SAFE MODE activado y es el que uso en mi blog.

Para comprobar que tan rápido carga nuestro blog, vamos a utilizar ab (Apache benchmarking tool).

Para usar Apache benchmarking tool solo debemos tener instalado Apache.

Para eso vamos a la consola y colocamos:

# ab -c 5 -t 60 http://omar.homelinux.com/wordpress/

Lo que hacemos con estas opciones es enviar peticiones de 5 en 5 (-c 5) por 60 segundos (-t 60), sin el plugin instalado el resultado es el siguiente:

Es decir durante esos 60 segundos ha servidor 798 paginas (Complete Request).

Si activamos el plugin, el resultado es un sorprendente 15927.

Debido a esto decidí instalar 1 Blog Cacher en mi blog.

Espero que este manual les haya ayudado a solucionar las dudas sobre los plugins de WordPress para el aceleramiento de la carga y ayude a todos a escoger el plugin que mejor se adecue a sus necesidades.

Por favor dejen sus comentarios.

Popularity: 2% [?]

Si te gusto este post, asegurate de suscribirte a mi RSS feed!

Omar Palomino

Hola mi nombre es Omar Palomino. Si te gustan las noticias de mi blog, no olvides suscribirte a la página. Puedes leer más en Acerca de MI, o bien ponerte en contacto conmigo al correo: omarc320@gmail.com

More Posts - Website

Post Relacionados

SI TE GUSTO ESTE ARTICULO, COMPARTELO!


Comments

There is one comment for this post.

  1. marley snith rivera lopez on Reply to this comment Junio 13, 2011 6:51 pm

    hola profesor cual es el nuevo correo chao

Write a Comment

*

Spam Protection by WP-SpamFree