La velocidad de carga del sitio es muy lenta

25

La velocidad de carga de la página del sitio Magento de mi cliente es muy lenta. ¿Qué puedo hacer para disminuir el tiempo de carga de la página?

La url del sitio es desibazaar.pk.

Shehryar
fuente

Respuestas:

36

Primero determine si es lento el procesamiento frontal o la ejecución real del script. Consulte con la consola del desarrollador en su navegador el Tiempo hasta el primer byte . Este es el tiempo que tarda el script en procesarse en el servidor

ingrese la descripción de la imagen aquí

En la captura de pantalla puede ver que es bastante bajo (200 ms), por lo que en este caso el problema no estaría en el servidor sino en el front-end. Ahora, si se termina, digamos, un segundo que tal vez desee optimizar.

Antes de aplicar algunos potenciadores y el almacenamiento en caché adicional, que no es una solución, solo un parche o una ayuda de banda para ocultar el problema real, intente descubrir qué es exactamente lo que es lento. Puede usar varias herramientas también para eso.

Consultas lentas

Magento puede ser bastante pesado en la base de datos, por lo que activar el Registro de consultas lentas puede ser un buen lugar para comenzar. Echa un vistazo a esta publicación sobre cómo activarlo. El registro le mostrará cualquier consulta que tarde más de X segundos.

Perfiladores

Los perfiladores lo ayudan a obtener información sobre lo que sucede en su código. Para Magento, recomendaría comenzar con Aoe_Profiler . Simplemente instálelo y enciéndalo. En la parte frontal, le dará una salida como esta:

ingrese la descripción de la imagen aquí

Expanda los resultados y compruebe si hay bloques rojos grandes. Esos son los momentos reales que tomó una cierta parte del código para procesar. Esté atento a los módulos de terceros que están ocupando mucho tiempo o memoria.

Otra gran herramienta es el fuego negro . Dado que Aoe_Profiler es un módulo en Magento, no muestra los procesos php subyacentes y puede bloquearse en instalaciones grandes con muchos módulos. Fuego negro corre en el servidor. Con un hackathon, configuramos una caja Vagabundo con fuego negro que puedes usar. Simplemente ponga su proyecto allí y enciéndalo. Consulte el sitio de Black Fire para obtener más información sobre cómo usarlo.

El último es probablemente mi favorito: New Relic .

Desafortunadamente, es un servicio pago, aunque proporcionan una prueba gratuita para cuentas profesionales. Después de instalarlo en su servidor y conectar el perfil, espere un par de horas para que ingresen los datos. Asegúrese de que haya algo de tráfico en la tienda.

ingrese la descripción de la imagen aquí

New Relic también tiene una publicación de blog sobre cómo depurar Magento que puedo recomendar. Consulte también el módulo ProxiBlue New Relic para obtener datos adicionales de Magento en New Relic.

Básicamente, esto le mostrará todas las características descritas anteriormente, como consultas lentas, los procesos en PHP, etc. y lo mostrará en gráficos y tablas fáciles. Esto debería darle una gran idea de cuál es el problema en su instalación.

Y a partir de aquí Ahora que sabe qué está causando el bajo rendimiento, puede pasar a resolverlo. Consulte foros como este o Google para ver la parte o el módulo de Magento que es lento. Se conocen muchos problemas y otros lo han resuelto antes. O, si no puede encontrar una solución, publique su pregunta aquí e incluya sus hallazgos en la pregunta

Sander Mangel
fuente
Excelente .. Gracias por la información sobre "BlackFire"
Rajeev K Tomy
11

La optimización de la velocidad del sitio en Magento es un tema muy amplio. Este es un enlace que puede ayudarte,

http://www.gxjansen.com/blog/101-ways-to-speed-up-your-magento-e-commerce-website/

Tomando una idea de ello,

Debe concentrarse en dos aspectos: 1. Optimización de la interfaz 2. Optimización del servidor

Optimización de frontend

  1. Puede instalar Fooman Speedster - http://www.magentocommerce.com/magento-connect/speedster-by-fooman.html y habilitar css, js merge

  2. Habilite el almacenamiento en caché de bloques de Magento en admin.

  3. Habilitar la compresión Gzip

Optimización de backend

  1. Puede configurar Varnish para el almacenamiento en caché de página completa

  2. Habilitar complicaciones en el backend.

  3. Habilitar estructura plana para catálogo (categoría y productos)

huzefam
fuente
1

Aquí hay un par de trucos que encontré para ayudar a acelerar su sitio que tal vez quiera probar:

Aplazar la carga de la imagen agregando esto a la /template/page/html/head.phtml

<script>
function init() {
var imgDefer = document.getElementsByTagName('img');
for (var i=0; i<imgDefer.length; i++) {
if(imgDefer[i].getAttribute('data-src')) {
imgDefer[i].setAttribute('src',imgDefer[i].getAttribute('data-src'));
} } }
window.onload = init;
</script>

Luego, en /template/catalog/product/list.phtmlcambiar, su imagen enlaza así:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AQQATUqB0EhKgAAAAxJREFUCNdj+P//PwAF/gL+3MxZ5wAAAABJRU5ErkJggg==" data-src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>

Otra es "Pre Gzip" todos sus javascripts y archivos CSS y luego agregar esto a su .htaccess.

    <ifModule mod_headers.c>
    ##### serve pre gziped files #####
    # Rules to correctly serve gzip compressed CSS and JS files.
    # Requires both mod_rewrite and mod_headers to be enabled.
    # Serve gzip compressed CSS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.css $1\.css\.gz [L,QSA]

    # Serve gzip compressed JS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.js $1\.js\.gz [L,QSA]

    # Serve correct content types, and prevent mod_deflate double gzip.
    RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
    RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
</IfModule>
Freejoy
fuente
1

Magento es un gran marco de comercio electrónico. Tiene toneladas de características y realmente puede construir una plataforma de comercio electrónico escalable. Usé Magento en mi último proyecto y enfrenté este problema de velocidad. Después de hacer algunas investigaciones y modificaciones, realmente aceleré mi sitio web.

Optimización del servidor

  • Use Nginx como servidor web
  • Mueva MySQL a un servidor diferente con la réplica maestro-esclavo. Si está en AWS, use RDS para MySQL.
  • Optimizar Nginx y Php-fpm
  • habilitar la compresión gzip
  • Habilitar caché del navegador

Configuraciones de Magento

  • Deshabilitar todas las extensiones innecesarias
  • Combinar archivos CSS y JavaScript
  • Desactivar registro
  • Limpiar las tablas de registro de Magento
  • Habilitar caché de página completa externa

Instalar Redis Cache, APC Opcode y extensión de caché de página completa - Instalar aceleradores PHP - Instalar caché Redis para backend y caché de sesión - Instalar Lesti FPC

Optimización de imagen y YSlow : en promedio, el 56 por ciento del peso de la página de un sitio web está compuesto por imágenes. La optimización de las imágenes de sus productos puede aumentar dramáticamente la velocidad de sus páginas, ya que esto disminuye sus tiempos de descarga. - Escanee su sitio web a través de gtmetrix o Pingdom y siga sus sugerencias de optimización.

Use CDN

Puede leer detalles sobre esto en mi sitio web: http://www.ranjeetvimal.com/tips-to-speed-up-magento-1-9-performance/

Ranjeet Vimal
fuente
0

Si está en un entorno de alojamiento compartido, es muy difícil lograr una buena velocidad, ya que uno no tiene control total sobre el servidor y el recurso es utilizado por varios otros sitios web, pero si está en un servidor dedicado y tiene acceso de administrador completo, intente con el caché de barniz .

otras cosas que puedes hacer

1.Combine archivos JS y CSS

Magento admin -> System Configuration -> Developer -> Under Javascript Settings”, change Merge Javascript Files to YES.
Magento admin -> System Configuration -> Developer -> Under CSS Settings”, change Merge CSS Files to YES

2.Habilite la compresión de salida, venza los encabezados y desactive ETags en el archivo .htaccess, consulte /programming//a/14745165/3114253

  1. Use CDN si es posible

  2. Utilice la función de compilación de Magento. Se informa que le brinda un aumento del rendimiento del 25% -50%: Sistema> Configuración. > Herramientas> Compilación.

  3. Mostrar menor no. del producto en la página de listado de productos.

  4. Habilitar catálogo plano.

Desde la interfaz de administrador de Magento, vaya a Sistema> Configuración> Catálogo. En Frontend, cambie Usar categoría de catálogo plano a YES. Si lo desea, en Frontend, cambie Usar producto de catálogo plano a SÍ. Limpia el caché.

Arun Karnawat
fuente
0

Si intentas acelerar tu interfaz:

  • use un CDN para las imágenes (!) y reduzca el tamaño de la imagen
  • concatenar CSS y JS
  • cargar JS antes de la etiqueta del cuerpo de cierre
  • usar carga js asíncrona siempre que sea posible
  • use sprites de imagen o una fuente de icono en lugar de miles de archivos png
  • reducir CSS no utilizado
  • generar una ruta crítica para su CSS

Backend:

  • use un caché adicional como barniz (TTFB <15 ms) o LestiFpc
  • Perfile sus consultas MySQL complejas y de carga de páginas y corríjalas
  • active gzip, etags, browser-cache, etc. a través de .htaccess
  • usar MySQL en un único servidor
upandfine
fuente
No enlace a servicios pagos con su URL de invitación para su propio beneficio personal.
7ochem
0

Para aumentar la velocidad del sitio web de magento, primero puede escanearlo con www.gtmetrix.com o Google Page Speed ​​Insights:

Puntuación de velocidad de la página de Google

entonces puedes decidir qué se puede hacer. En la mayoría de los casos se reduce a:

  • optimizar el tiempo hasta el primer byte (TTFB) para reducir el tiempo de respuesta del servidor
  • Aplazar el análisis de JavaScript
  • optimizar imágenes
  • usar sprites CSS
  • establecer dimensiones de imagen
  • Minificar CSS / JS / HTML
  • fusionar JS / CSS para reducir el número de solicitudes HTTP

Tomado de 34 formas de acelerar M1 y M2

Konstantin Gerasimov
fuente