Como optimizar y afinar el rendimiento de Drupal en sitios con mucho tráfico
Carlos — Dom, 18/05/2008 - 18:04
El coste que se ha de pagar por tener tantas funcionalidades en Drupal es que sea algo más pesado que soluciones más simples. Drupal es rápido si se compara con CMS similares pero además existen formas para hacer que todavía funcione mejor y más rápido.
Lo más común es usar sistemas alternativos o complementarios a la cache de Drupal, los más importantes son:
En la DrupalCon de Boston del 2008 se hizo una charla muy interesante sobre el tema.
Yo también me he estado
Pedro (no verificado) — Dom, 18/05/2008 - 20:42Yo también me he estado mirando el tema y he encontrado este comentario http://www.jeffbeeman.com/node/101 donde el de drupalmodules.com dice que usa Xcache con lighthttp (http://xcache.lighttpd.net/).
El modulo de Xcache parece que no está disponible todavía no?
También me miré el Advanced caché, pero se trata de parchear el core
Saludos!
Sí, el XCache debe estar sólo
admin — Dom, 18/05/2008 - 21:33Sí, el XCache debe estar sólo accesible por CVS.
En 2bits tienen un montón de artículos dedicados al tema.
Ahh, la semana que viene tendremos un nuevo server aunque todavía no hemos decidido cual pero será mejor que el que tenemos eso seguro.
Pingback
Optimización de Drupal para sitios con mucho tráfico CMSTEC (no verificado) — Lun, 19/05/2008 - 03:20[...] Fuente: carlos.rinconsanchez [...]
En mi experiencia, el cuello
Javier Linares (no verificado) — Vie, 23/05/2008 - 19:05En mi experiencia, el cuello de botella de Drupal (sobre todo si usas views, CCK y todas esas interfaces tan chulas) es la base de datos. Y para aliviar la base de datos, guardar caché en base de datos no ayuda. Así que me decanto por soluciones como boost. Si la web tiene un porcentaje significativo de usuarios anónimos, una caché en HTML como la que proporciona boost puede reducir la carga drásticamente.
Por otra parte, en Drupal hay una capa de base de datos muy potente que con no muchas modificaciones (aunque, eso sí, bien pensadas :)) permite implementar MySQL master/slave. De esta forma, se pueden tener varias máquinas respondiendo a la base de datos. De momento no hay un módulo que proporcione esto (tengo entendido que se está viendo para Drupal 7-8) pero cualquier organización o empresa que use Drupal a cierto nivel llegará pronto a problemas como este.
El sistema que habéis usado
admin — Sáb, 24/05/2008 - 13:13El sistema que habéis usado en motogp no se podrá publicar, no? Por que ahí si se nota que habéis conseguido que Drupal funcione rápido, rápido, aunque supongo que la diferencia de velocidad más notable sólo es para usuarios no logeados, no?
Y por cierto, si el cuelo de botella es en base de datos memcache sí debería funcionar, sobretodo para usuarios logeados. Combinando eso con algo tipo boost y el advanced cache debería notarse bastante la diferencia de rendimiento, no?
No quiero hablar mucho de
Javier Linares (no verificado) — Sáb, 24/05/2008 - 13:53No quiero hablar mucho de este proyecto en concreto porque aún estamos definiendo qué se puede contar y qué se puede liberar. Espero poder tener pronto claro qué se puede contar y contarlo de la mejor forma posible. Mientras, te invito a crearte una cuenta y medir los tiempos. Descubrirás que hay muy poca diferencia de velocidad entre usuarios anónimos y usuarios registrados.
Con memcache no tengo ninguna experiencia. Hemos optado por replicación master-slave y un buen pool de slaves. Las operaciones de escritura lógicamente van al master, pero la carga que soporta es mínima. Lo bueno de master-slave es que es casi totalmente transparente al software (está prácticamente centrado en la capa de abstracción de base de datos) y no es una caché, sino que realmente se construye la página de la base de datos.
Pues a ver si os dejan
admin — Sáb, 24/05/2008 - 14:18Pues a ver si os dejan explicar mucho que seguro que nos irá muy bien para un proyecto que tenemos en mente.
Por cierto, me he registrado pero me ha costado un montón por que no se indica el error. El problema ha sido que ponía que no quería que me enviasen nada pero no he puesto en que formato quería los emails que no quería que me enviasen y hasta que lo he visto he estado un rato.
Ahh, ya he visto que no hay mucha diferencia, va rapidisimo estçe logeado o no. Supongo que se muestra el mismo (más o menos) contenido cacheado a todos los usuarios.
Pues nosotros nos estamos
caitiff (no verificado) — Jue, 06/11/2008 - 14:53Pues nosotros nos estamos encontrando con este problema al poner la web en producción.
En determinados momentos el cuello de botella es tan estrecho que la web se queda saturada y no responde en absoluto.
Todavía falta determinar si es un problema de creatustextos.net o de alguno de los otros proyectos en drupal que tenemos, pero intuyo que se agravará con el tiempo, porque la expectativa de usuarios de cocacola-creatustextos es de unos 20 mil, y la de otros proyectos mayor...
como està el tema en estos momentos? me estoy leyendo el informe de la drupalcon que has aconsejado, pero por donde me aconsejarias que empezara a optimizar? hay varios frentes y parece que no està consensuado cual es el óptimo ahora mismo.
Creo que no hay una solución
Javier Linares (no verificado) — Jue, 06/11/2008 - 15:51Creo que no hay una solución clara y directa porque el problema está en distintos sitios. En el lado de sistemas hay posibles "apaños" en distintos sitios, como tener alguna configuración de MySQL que permita repartir las consultas entre varios servidores. Y en el lado del software se pueden hacer también algunas cosas.
En cualquier caso primero habría que identificar bien qué sitio es el que tiene problemas y en qué componente o servicio (servidor web, base de datos, etc). Y hay que tener en cuenta que el desarrollo de proyectos con Drupal puede ser algo rápido y fácil a la hora de montarlo, pero en sitios con mucho tráfico se termina pagando en la inversión necesaria en performance. Si se gestiona bien puede salir a cuenta.
Nosotros estamos ahora
DS-Multimedia (no verificado) — Mié, 08/07/2009 - 19:27Nosotros estamos ahora realizando un proyecto con Drupal. La verdad es que es la primera aproximación que hacemos a esta tecnología. Normalmente hacemos las aplicaciones a pelo con PHP.
Me da miedo tener problemas de rendimiento y leyendoos me da más miedo aún. Vamos a cargar el portal en un servidor dedicado core II duo, 2GHZ con 2 GB de RAM.
Qué carga de usuarios creeis que puede soportar el portal?
Estamos instalando CCK, Panels, Wiews... todo lo que consume recursos.
Gracias por vuestro tiempo.
Un par de meses
DS-Multimedia (no verificado) — Jue, 24/09/2009 - 22:17Un par de meses después....
He aprendido suficiente de drupal para asegurar que no es preocupante. Los sistemas de chaché que traé son una pasada y el módulo trotle permite clusterizar el tráfico de una manera estupenda.
Drupal es una maravilla.