Drupal es rápido en su desarrollo, pero el rendimiento es muy pobre. Es difícil llegar a 50 solicitudes por segundo.
Y hay tantas consultas SQL en una página web simple. Si prueba el tiempo de solicitud de un formulario enviado en Drupal.org, siempre tardará unos segundos en completarse.
¿Cómo mejora la velocidad de su sitio web?
7
6
performance
Bruce Dou
fuente
fuente
Respuestas:
Almacenamiento en caché, almacenamiento en caché y almacenamiento en caché.
Algunas sugerencias que he dado previamente a una pregunta similar sobre do
fuente
Estas son notas de mis experiencias y pueden variar de lo que otros experimentan. Principalmente uso la pila LAMP y he considerado lo mismo en mis sugerencias.
Reglas generales para el almacenamiento en caché que generalmente sigo.
Mejorar el rendimiento de un sitio Drupal (en el orden creciente de complejidad)
Mantenga el núcleo actualizado, el módulo contrib y los temas actualizados. Si importa.
Instale APC en su servidor. (Movido al principio basado en la sugerencia de Letharion)
Caché de página: admin / config / development / performance Diferencia entre la vida útil mínima de la caché y la caducidad de las páginas en caché
Use hojas de Sprite: https://www.drupal.org/project/spritesheets
Establezca el valor mínimo de tiempo de vida de la memoria caché en un número mayor y use módulos de limpieza de la memoria caché para borrar las memorias caché de páginas específicas: cada vez que edito / actualizo un nodo, todas las memorias caché de página para usuarios anónimos se pierden
fuente
El módulo Boost también es bastante útil, crea cachés de archivos estáticos a partir de sus páginas web. Es principalmente para sitios web con mucho tráfico de usuarios anónimos.
fuente
Vale la pena mencionar que si está utilizando el controlador de base de datos SQLIte, es posible que deba deshabilitar la sincronización del disco.
En algunas configuraciones de servidor, mejorará drásticamente el rendimiento.
fuente
El secreto del rendimiento de Drupal está en el almacenamiento en caché y en seguir las buenas prácticas. Sugerencias:
Drupal back-end
Drupal front-end
defer
oasync
atributos.PHP
Base de datos
Servidor
Sitios web de alto tráfico
Si espera una gran carga para su sitio web, use Varnish. Considere también usar CDN.
Lea más en: Experiencia del mundo real en escala y ajuste de rendimiento
Recursos adicionales:
fuente
Hay un libro llamado High Performance Drupal que proporciona las mejores prácticas, ejemplos y explicaciones detalladas para resolver varios problemas de rendimiento y escalabilidad. Aprenderá cómo aplicar técnicas de codificación e infraestructura a componentes internos de Drupal, rendimiento de aplicaciones, bases de datos, servidores web y análisis de rendimiento.
En el artículo Rendimiento y escalabilidad en Drupal 7 puede encontrar algunos ejemplos sobre Drupal 6 y Drupal 7 y la siguiente lista:
fuente
Se han realizado muchos ajustes para optimizar el rendimiento de su sitio Drupal, pero no todos son imprescindibles. Tenemos que buscar ciertas alternativas y técnicas que conduzcan a una plataforma optimizada de Drupal. Caché, sí, es una forma de optimizar el sitio web a través de diferentes medios, pero algunos complementos y consejos adicionales pueden aumentar y afinar su sitio web sin que se realicen procesos sin problemas.
Recientemente hemos publicado un artículo similar en nuestro sitio web que creo que podría ayudarlo a realizar algunos ajustes.
Fuente: http://www.cloudreviews.com/blog/drupal-performance-optimization-tips
fuente
Hay algunas posibilidades para mejorar la velocidad de Drupal a un nivel razonable sin instalar ningún módulo nuevo. Sí, Drupal tiene configuración de rendimiento.
Habilitar 'Agregar archivos JavaScript'
Una vez que se configuran estas configuraciones, vaya a: YourSiteDomain / admin / reports / status
Y ahora ha terminado con la optimización de velocidad para su sitio drupal 7.
Existen pocas herramientas de prueba de velocidad en línea para verificar la velocidad. Asegúrese de utilizar una de las herramientas de comprobación de velocidad y ejecutar una prueba antes de actualizar la configuración anterior. Y una vez que haya actualizado la configuración de rendimiento, vuelva a ejecutar la prueba de velocidad. Definitivamente verás una mejora.
Pingdom y HTTP Fox (complemento FireFox) son las mejores herramientas para verificar la velocidad del sitio.
La configuración anterior no solo almacena en caché sus páginas para usuarios anónimos, sino que también comprime los archivos CSS y JS. Por ejemplo, si su sitio está cargando 80 archivos, publique estas configuraciones, el número de solicitudes se reducirá al menos en un 50%, por lo que aquí tiene una mejora de velocidad 2 veces mayor en su sitio Drupal.
fuente
Como desarrollador de back-end, siempre hay espacio para mejorar su código para aumentar el rendimiento del sitio web. Algunas pautas para los desarrolladores de backend podrían ser:
1) Limpia tu mesa de vigilancia
2) No abuses de la variable API
3) Hacer menos o mejores solicitudes HTTP
4) Mantenga su "módulo de puntos" corto
Cuando se trata del final de la fuente y los creadores de sitios, se puede lograr mucho más, pero es importante tener en cuenta el rendimiento desde todos los puntos de vista.
Fuente: Optimice antes de lanzarlo
fuente
Un sitio no optimizado de Drupal 7 con 2 GB de RAM puede atender satisfactoriamente entre 20 y 25 solicitudes por segundo. Si quieres ir más allá de eso, el sitio requerirá algunos ajustes. Lo que modifique depende de si la mayoría de los usuarios del sitio son anónimos o están autenticados. Estas son las principales cosas que puede hacer para mejorar el rendimiento:
El sitio sirve principalmente a usuarios anónimos:
1) Definitivamente instale y configure APC, memcache y entitycache.
2) Coloque el proxy Varnish frente al servidor web. Se tarda unos 30 minutos en instalar y configurar, pero reducirá drásticamente los tiempos de carga de la página. De hecho, Varnish puede manejar aproximadamente 300 solicitudes por segundo en una máquina de 2 GB si todas las páginas están en caché. Use el módulo Caducar para expirar solo las páginas seleccionadas en la actualización / eliminación de contenido.
3) Use el módulo de Agregación avanzada de CSS / JS para agregar archivos CSS y JS. Intente mover todos los archivos JS al final de la página. Pero tenga en cuenta que esto puede romper su sitio, así que implemente esto en producción después de una prueba exhaustiva. También experimente con la alineación de CSS crítico. En mi experiencia, disminuirá el tiempo de carga de la página en aproximadamente medio segundo.
4) CSS / JS / images deben tener un encabezado de vencimiento futuro. Esto asegurará que los navegadores no soliciten las mismas imágenes CSS / JS / una y otra vez.
5) Asegúrese de que el servidor web esté sirviendo páginas comprimidas / CSS / JS.
Después de implementar los 5 pasos anteriores, su servidor de 2 GB de RAM debería poder procesar 50 solicitudes por segundo con bastante facilidad.
El sitio sirve principalmente a usuarios autenticados:
Optimizar este sitio es más complejo. Dichos sitios se incluyen en una de las dos subcategorías para fines de optimización:
(a) La mayoría de las páginas en el sitio son idénticas, excepto 1 o 2 bloques que tienen información específica del usuario. Por ejemplo, el sitio de Drupal Commerce.
(b) La mayoría de las páginas están completamente personalizadas para el usuario. Por ejemplo, el sitio Drupal Commons.
Si su sitio pertenece a la categoría (a), aplique la mayoría de las técnicas que discutimos para el sitio que sirve principalmente a usuarios anónimos. La única diferencia es que para las páginas que no son de administrador, Varnish deberá eliminar la cookie SESSION del encabezado y servir las páginas almacenadas en caché. Utilice el módulo AJAX Block para bloques de servidores con información específica del usuario utilizando AJAX. De esta manera, la mayor parte de la página se servirá extremadamente rápido usando Varnish y luego la información específica del usuario se servirá a través de AJAX.
Si su sitio pertenece a la categoría (b), use el módulo Authcache. Prefiero no usarlo tanto como sea posible porque requiere bastante configuración y mantenimiento. Pero funciona muy bien. No será tan rápido como usar Varnish, pero podrá manejar 50 solicitudes por segundo que esté buscando.
Si está buscando ir más allá de lo que hemos discutido aquí, eche un vistazo a la Lista de verificación de optimización de rendimiento de Drupal . Divulgación: está escrito por mí. Cita una lista exhaustiva de cosas que puede hacer para que su sitio de Drupal sea increíblemente rápido.
fuente