La velocità di caricamento del sito è molto lenta


25

La velocità di caricamento della pagina del sito Magento del mio cliente è molto lenta. Cosa posso fare per ridurre il tempo di caricamento della pagina?

L'URL del sito è desibazaar.pk.

Risposte:


36

Innanzitutto determinare se il rendering del front-end o l'esecuzione effettiva dello script sono lenti. Verificare con la console degli sviluppatori nel browser il Time To First Byte . Questo è il tempo impiegato dallo script per l'elaborazione sul server

inserisci qui la descrizione dell'immagine

Nella schermata puoi vedere che è abbastanza basso (200ms), quindi in questo caso il problema non sarebbe sul server ma sul front-end. Ora, se è finita, diciamo, un secondo che potresti voler ottimizzare.

Prima di dare uno schiaffo ad alcuni booster e alla cache aggiuntiva che non è una correzione, solo una patch o un cerotto per nascondere il vero problema, prova a capire cosa è esattamente lento. È possibile utilizzare diversi strumenti anche per questo.

Query lente

Magento può essere piuttosto pesante nel database, quindi l'attivazione del registro delle query lente potrebbe essere un buon punto di partenza. Dai un'occhiata a questo post su come accenderlo. Il registro mostra tutte le query che richiedono più di X secondi.

profilers

I profiler ti aiutano a ottenere informazioni su ciò che accade nel tuo codice. Per Magento consiglierei di iniziare con Aoe_Profiler . Basta installarlo e accenderlo. Sul front-end ti darà un output come questo:

inserisci qui la descrizione dell'immagine

Espandi i risultati e verifica la presenza di grandi blocchi rossi. Quelli sono i tempi effettivi per l'elaborazione di una determinata parte del codice. Cerca eventuali moduli di terze parti che richiedono molto tempo o memoria.

Un altro ottimo strumento è il fuoco nero . Poiché Aoe_Profiler è un modulo in Magento non mostra i processi php sottostanti e può bloccarsi su grandi installazioni con molti moduli. Black Fire funziona sul server. Con un hackathon abbiamo creato una scatola di Vagrant con fuoco nero che puoi usare. Metti lì il tuo progetto e accendilo. Controlla il sito di Black Fire per maggiori informazioni su come usarlo.

L'ultimo è probabilmente il mio preferito: New Relic .

Sfortunatamente è un servizio a pagamento sebbene forniscano una prova gratuita per account pro. Dopo averlo installato sul tuo server e aver collegato il profilo, attendi un paio d'ore prima che arrivino i dati. Assicurati che ci sia del traffico nello shop.

inserisci qui la descrizione dell'immagine

New Relic ha anche un post sul blog su come eseguire il debug di Magento che posso consigliare. Dai un'occhiata anche al modulo ProxiBlue New Relic per ulteriori dati Magento in New Relic.

Fondamentalmente questo ti mostrerà tutte le funzionalità sopra descritte come query lente, i processi in PHP ecc. E le visualizzerà in semplici grafici e tabelle. Questo dovrebbe darti un'idea approfondita di qual è il problema nella tua installazione.

E da qui Ora che sai cosa sta causando le basse prestazioni puoi passare a risolverlo. Controlla forum come questo o Google per la parte o il modulo di Magento che è lento. Molti problemi sono ben noti e altri l'hanno risolto in precedenza. Oppure, se non riesci a trovare una soluzione pubblica la tua domanda qui e includi i risultati nella domanda


Eccellente .. Grazie per la visione di "BlackFire"
Rajeev K Tomy,

11

L'ottimizzazione della velocità del sito in Magento è un argomento molto vasto. Questo è un link che può aiutarti,

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

Dandogli un'idea,

È necessario concentrarsi su due aspetti: 1. Ottimizzazione del frontend 2. Ottimizzazione del backend

Ottimizzazione del frontend

  1. Puoi installare Fooman Speedster - http://www.magentocommerce.com/magento-connect/speedster-by-fooman.html e abilitare css, js merge

  2. Abilita la memorizzazione nella cache dei blocchi Magento in admin.

  3. Abilita la compressione Gzip

Ottimizzazione del backend

  1. È possibile configurare Varnish per la memorizzazione nella cache a pagina intera

  2. Abilita complicazione nel backend.

  3. Abilita struttura piatta per catalogo (categoria e prodotti)


1

Ecco un paio di piccoli trucchi che ho trovato per velocizzare il tuo sito che potresti voler provare:

Rinvia il caricamento delle immagini aggiungendo questo al file /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>

Quindi, /template/catalog/product/list.phtmlcambia i tuoi collegamenti immagine in questo modo:

<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>

Un altro è "Pre Gzip" di tutti i tuoi javascript e file CSS, quindi aggiungilo al tuo .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>

1

Magento è un ottimo framework di e-commerce. Ha tonnellate di funzionalità e puoi davvero costruire una piattaforma di e-commerce scalabile. Ho usato Magento nel mio ultimo progetto e ho affrontato questo problema di velocità. Dopo aver fatto qualche ricerca e modifica, ho velocizzato il mio sito web.

Ottimizzazione del server

  • Usa Nginx come web server
  • Sposta MySQL su un altro server con la replica master-slave. Se sei su AWS usa RDS per MySQL.
  • Ottimizza Nginx e Php-fpm
  • abilita la compressione gzip
  • Abilita cache del browser

Impostazioni Magento

  • Disabilita tutte le estensioni non necessarie
  • Unisci file CSS e JavaScript
  • Disabilita registro
  • Pulisci le tabelle dei log di Magento
  • Abilita cache di pagina intera esterna

Installa Redis Cache, APC Opcode ed estensione Cache a pagina intera - Installa acceleratori PHP - Installa cache Redis per backend e cache di sessione - Installa Lesti FPC

Ottimizzazione delle immagini e YSlow : in media il 56 percento del peso della pagina di un sito Web è costituito da immagini. L'ottimizzazione delle immagini dei tuoi prodotti può aumentare notevolmente la velocità delle tue pagine in quanto riduce i tempi di download. - Scansiona il tuo sito Web tramite gtmetrix o Pingdom e segui i loro suggerimenti di ottimizzazione.

Usa CDN

Puoi leggere i dettagli a riguardo sul mio sito web: http://www.ranjeetvimal.com/tips-to-speed-up-magento-1-9-performance/


0

se ti trovi in ​​un ambiente di hosting condiviso è molto difficile raggiungere una buona velocità poiché non si ha il controllo completo sul server e la risorsa viene utilizzata da molti altri siti Web, ma se si è su un server dedicato e si dispone dell'accesso completo per l'amministratore, provare la cache di vernice .

altre cose che puoi fare -

1. Combina i file JS e 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.Attiva la compressione di output, scade le intestazioni e disabilita gli ETag nel file .htaccess vedi questo /programming//a/14745165/3114253

  1. Utilizzare CDN se possibile

  2. Usa la funzione Compilation di Magento. È stato riferito che ti darà un aumento delle prestazioni del 25% -50%: Sistema> Config. > Strumenti> Compilazione.

  3. Mostra meno del prodotto nella pagina di elenco dei prodotti.

  4. Abilita catalogo flat.

Dall'interfaccia amministratore di Magento, vai su Sistema> Configurazione> Catalogo. In Frontend, modifica Usa categoria catalogo semplice su SÌ. Se lo si desidera, in Frontend, modificare Usa prodotto catalogo piatto su SÌ. Cancella la cache.


0

Se provi ad accelerare il tuo frontend:

  • usa un CDN per le immagini (!) e riduci le dimensioni dell'immagine
  • concatenare CSS e JS
  • caricare JS prima del tag body di chiusura
  • utilizzare il caricamento asincrono js quando possibile
  • usa gli sprite di immagini o un font icona invece di migliaia di file png
  • ridurre i CSS non utilizzati
  • generare un percorso critico per il tuo CSS

backend:

  • utilizzare una cache aggiuntiva come varnish (TTFB <15ms) o LestiFpc
  • profila le tue query MySQL complesse e di caricamento della pagina e correggile
  • attivare gzip, etags, browser-cache ecc. tramite .htaccess
  • usare MySQL su un singolo server

Si prega di non collegare a servizi a pagamento con l'URL di invito per il proprio guadagno personale.
7

0

Per aumentare la velocità del sito Web di Magento, potresti voler prima scansionarlo con www.gtmetrix.com o Google Page Speed ​​Insights:

Punteggio di velocità della pagina di Google

allora puoi decidere cosa si potrebbe fare. Nella maggior parte dei casi si tratta di:

  • ottimizzare il tempo al primo byte (TTFB) per ridurre i tempi di risposta del server
  • differire l'analisi di Javascript
  • ottimizzare le immagini
  • usa gli sprite CSS
  • imposta le dimensioni dell'immagine
  • minimizza CSS / JS / HTML
  • unire JS / CSS per ridurre il numero di richieste HTTP

Tratto da 34 modi per velocizzare M1 e M2

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.