Se encuentra usted aquí

Optimizando tu sitio en Drupal

Este articulo es una traducción del articulo Optimizing Your Drupal Site creado por Chad Keck (muchas gracias por permitir traducirlo!)

This article is a translation of the article Optimizing Your Drupal Site by Chad Keck (thank you very much for allowing translate!)

Drupal es un CMS muy usado, que se ha hecho cada vez más popular. Yo he usado personalmente Drupal intermitentemente desde la version 4  y he visto como madura a través  de los años para convertirse en mi sistema de administración de contenido preferido. En Rackspace Cloud nosotros hablamos con cientos, si no es que miles de clientes y prospectos de clientes cada mes que quieren migrar sus sitios de Drupal a la nube o que quieren iniciar de cero con Drupal.

Mejorar el desempeño es siempre una preocupación en cualquier sitio y después de trabajar con innumerables instalaciones de Drupal he identificando algunas herramientas y opciones que pueden rápidamente hacer una diferencia en el desempeño de tus sitios. Estos ajustes no son específicos de la Rackspace Cloud platforms y deben ser considerados para cualquier sitio en Drupal en cualquier hospedaje. No solo mejoraran el desempeño de tu sitio si no que también reducirá la utilización de los recursos back-end como son el CPU y la memoria o los ciclos de computo en Cloud site por ejemplo. Esto es logrado a través  de varios niveles de caching en paginas estáticas y bases de datos altamente optimizadas. veamos algunas opciones.

Antes de que veamos cualquier modulo extra, examinemos que tiene Drupal por default que nos pueda ayudar.

Navega a Administer –> Site Configuration –> Performance. En esta sección permite a los usuarios activar/desactivar funciones especificas de cache incluidas en el Core de Drupal. 

Estas son mis recomendaciones para un Sitio de Drupal tipico:

•    Caching Mode: Normal

•    Page Compression: Enabled

•    Block Cache: Enabled

•    Optimize CSS Files: Enabled  (usar solo en producción, no cuando se este creando el tema o modificando el sitio

•    Optimize JavaScript Files: Enabled (usar solo en producción, no cuando se este creando el tema o modificando el sitio

Después recomiendo configurar el cron job para que corra el archivo cron.php  regularmente, típicamente hago que corra una vez al día, pero depende de tu sitio (sitios con mucho trafico tal vez quieran correrlo más frecuentemente). Mientras que esto tal vez no  tenga un impacto directo en el desempeño es una una buena practica en general ya que al ejecutar este script realiza muchas tareas de mantenimiento incluyendo borrar archivos viejos de log y revisar actualizaciones. Configurar un Cron job es bastante simple y algunas plataformas de hospedaje Como sitios en la nube pueden hacer esto una operación de tocar botones. Revisa esta pagina para más información de como Drupal usar el cron y como configurarlo.

Ahora, vamos a echar un vistazo a dos módulos extras que he usado por algún tiempo y que pueden  tener un impacto dramático en tu sitio:

 

Boost

Proporciona cache static de paginas. de manera similar a como funciona WP Super Cache para Wordpress. Este modulo funciona muy bien si tu sitio recibe sobre todo trafico de usuarios anónimos. Los desarrolladores hicieron este modulo fácil de configurar, lo he probado en varias plataformas incluyendo un servidor dedicado con linux, Rackspace Cloud Sites y Cloud Servers y hasta algunas plataformas de hospedaje compartido. Boost  incluye soporte parcial para Nginx, Lighthttpd e incluso IIS 7 ( Apache esta completamente soportado) vamos paso por paso en su configuración:

*Nota. Boost requiere que esten activados tanto el cron como clean-URLs .

1- Baja boost de http://drupal.org/project/boost

2- Descomprime y subelo a  el folder de modules en la carpeta de Sites.

3- Navega a Administer –> Site Building –> Modules

4- Activa Boost

5- Navega a Administer –> Site Configuration –> Performance

6- Notaras las nuevas opciones para ‘Boost’ en el menú de la sección, toca en los parámetros de Boost

7- Revisa y ajusta cualquier parámetro (generalmente me quedo con los defaults)

8- Toca ‘Boost htaccess rules generation’ en el menu de la sección

9- Copia las reglas htaccess que fueron generadas automáticamente y pegalas en el archivo htaccess, ve abajo de:

# RewriteBase /

INSERT BOOST CODE HERE

#Rewrite URLs of the form ‘x’ to the form ‘index.php?q=x’

Boost ahora debe estar funcionando. Revisa en Administer –> Reports –> Status Report page para ver si existe algún error.
 

DB Maintenance

el modulo DB Maintenance module optimiza las tablas seleccionadas por el administrador en la base de datos durante la ejecución de cron.php. Mantener tu base de datos optimizada es una de las maneras más sencillas de garantizar una operación suave de un sitio en cualquier plataforma y es esencial si quieres escalar tu sitio para soportar trafico alto efectivamente. La instalación es bastante rápida y fácil:

1- baja DB Maintenance de aqui: http://drupal.org/node/41588

2- Descomprime y subelo a  el folder de modules en la carpeta de Sites.

3- Navega a Administer –> Site Building –> Modules

4- Activa DB Maintenance

5- Navega a Administer –> Site Configuration –> DB Maintenance

6- Selecciona las tablas en la base de datos de Drupal que quieres que sean optimizadas durante la ejecución de cron y activa logging si lo prefieres.

7- Salva y eso es todo!

Se sugiere seleccionar las tablas donde existe mucho movimiento de datos como accesslog, cache, sessions, y watchdog. Siempre puedes  hacer un cron separado y más frecuente como parte de la administración del servidor si quieres o necesitas optimizar las tablas de los nodos.

 

Integración con CDN

El consejo final que te dejare es uno de los más importantes y es tomar tu contenido estático de una plataforma CDN. Existe muchas opciones y una de las más fáciles y más rentable para aprovechar es Cloud Files de Rackspace Cloud. que tiene implementada integración CDN para Limelight Networks. Sacar tu contenido estático como son imágenes, video, audio, documentos, etc- a una red de contenido global no solo disminuye mucho más la carga de tu plataforma de hospedaje si no que también hace los tiempos de carga a tu sitio significativamente más rápidos llamando el contenido lo más cerca posible geográficamente a tus visitantes (local o  cerca de un data center local).

Subir contenido a Cloud Files y activar distribución CDN toma solamente algunos segundos y es el método preferido para insertar contenido estático, especialmente archivos de vídeos y baudios largos. Actualmente existe pocos módulos para Drupal en desarrollo que soportan archivos en la nube y otros tipos de plataformas de  almacenamiento/CDN en varios grados, pero ninguno con el cual este conforme para mencionarlo todavía. Una vez que maduren hará el uso de estas plataformas mucho más fácil.

Implementar estos consejos y módulos debería tener un impacto significativo en el desempeño de tu sitio. Existen otro sin numero de maneras optimizar tu sitio aparte de estas así que no dudes en explorar otras opciones, Yo espero estas sea de ayuda para nuevos usuarios de Drupal e incluso para usuarios más experimentados.

Categorias: 

Comentarios

Una forma también para aumentar también la velocidad de una web es configurar php y mysql de la forma que vaya lo más rápido posible.

Por ejemplo, yo tenia problemas con se realizaban muchas consultas de mysql al mismo tiempo en mi web para hacer un curriculum web gratis . Me acuerdo que tuve que desactivar el módulo de resolución inversa de ip . Haciendo que no se me amontonará las consultas porque previamente debían pasar por el servidor de dns para comprobar que la resolución inversa me indentificaba con autentico.

Como esto puede hacer perder seguridad porque pueden intentar falsificar una ip. Pues entonces, si quieres estar más seguro puedes imprementar un enlace desde una web oculta para que abra y cierre el puerto. De todas formas si tienes una ip fija va ser dificil que acierten con tu ip, usuario y clave para poder identificarse.

Otras veces lo que hay que optimizar el código, escoger otro módulo que gaste menos recursos, con explican en el video.

Añadir nuevo comentario