Come velocizzare i siti di sviluppo di Magento 2?


18

Ho disattivato tutte le cache e ho impostato la modalità di distribuzione sullo sviluppo. Quindi i miei siti di sviluppo Magento 2 su tutte le macchine sono molto lenti rispetto ai siti Magento 1.x.

È normale per Magento 2?

Quali sono le configurazioni server e Magento che dobbiamo utilizzare per i siti di sviluppo di Magento 2 in modo che abbia la massima velocità?

Aggiornare:

Su Mac per lo sviluppo locale, sono stato in grado di velocizzare il sito disabilitando opcache a causa di un problema di configurazione.


Installa Redis per sostituire la cache del file back-end. E usa memcache per sessioni php. Abilitare la cache e disabilitare le sezioni della cache che non si desidera abilitare quando si lavora su una determinata attività. Se stai disegnando solo il tema, usa grunt watch e abilita tutta la cache. Come configurare è nella documentazione ufficiale di magento 2.
oscuro

redis è inutile a meno che tu non abbia 100k + prodotti
Claudiu Creanga il

Soffro anche di un lento sviluppo sul PC locale Windows. Secondo la tua esperienza, sarebbe meglio per me iniziare lo sviluppo locale in Ubuntu o Linux Mint? e quale configurazione mi consigliate?
Jai,

Risposte:


12

È possibile utilizzare questa casella di vagabondaggio https://github.com/EcomDev/fast-hypernode .

Lo uso ed è abbastanza veloce. In modalità sviluppatore con cache disabilitata e xdebug un aggiornamento della pagina è di circa 2-3 secondi.

Oppure puoi usare la scatola vagabonda fornita da magestead: http://www.magestead.com/

  • usa php7.
  • usa gulp per generare css e js (più veloce di grugnito). Puoi provare la configurazione già costruita con snowdog (pronto in 2 minuti): https://github.com/SnowdogApps/magento2-frontools
  • utilizzare 3 GB di RAM se si esegue il test.
  • disabilita solo la cache di cui hai bisogno . Se stai eseguendo frontend non devi disabilitare alcuna cache.
  • usa livereload o browsersync per lo sviluppo di frontend in modo da non dover ricaricare le pagine.

Scopri cosa fanno i comandi di Magento e quando eseguirli. Se stai correndo molto setup:static-content:deployallora impazzirai a vedere quei punti. Grunt o gulp non conoscono @magento_import quindi è per questo che quando aggiungi o rimuovi file devi eseguire dev:source-theme:deployche è molto più veloce di quello sopra.

Cosa non migliora:

A meno che tu non abbia più di 100k prodotti redis non fa alcuna differenza, quindi non preoccuparti ( http://www.developers-paradise.com/wp-content/uploads/2016/05/05-Yaroslav-Rogoza-Magento-2-performance- comparazione-in-different-environment.pdf ).

Attualmente, a causa del modo in cui magento2 utilizza requestjs (2mb di js), neanche http2 fa differenza.


Soffro anche di un lento sviluppo sul PC locale Windows. Secondo la tua esperienza, sarebbe meglio per me iniziare lo sviluppo locale in Ubuntu o Linux Mint? e quale configurazione mi consigliate?
Jai,

@Jai scusa, non ho esperienza con Mint. Uso mac e ubuntu.
Claudiu Creanga,

Signore ... Posso aspettarmi una buona velocità di sviluppo di Magento 2 ... se uso Vagrant sulla mia finestra 7 (i5 + 12Gb Ram) O dovrei andare su Ubuntu con questa configurazione di sistema perché la finestra è frustrante nello sviluppo lento
Jai

1
@Jai Windows è ok. Dovresti mirare a un aggiornamento di 2-3 secondi in modalità sviluppatore con alcune cache attive. controlla quanto è veloce questo github.com/alankent/docker-gsd sul tuo computer e punta a quella velocità. per vagabondo raccomando hypernode packagist.org/packages/byteinternet/hypernode-vagrant
Claudiu Creanga

Grazie per il tuo suggerimento Attuerò la tua raccomandazione e ritieni che lo sviluppo di Magento possa essere fatto rapidamente in Ubuntu e Mac rispetto a Windows?
Jai,

7

A seconda del tipo di sviluppo che prevedi di fare, potresti scoprire che il passaggio alla compilazione CSS lato client migliora significativamente la velocità dei siti di sviluppo

Negozi> Configurazione> Avanzate> Sviluppatore> Flusso di lavoro di sviluppo front-end

Passa al lato client meno compilation


Questa impostazione sembra essersi spostata in Magento 2.2. Qualche suggerimento su dove trovarlo ora?
fritzmg,

1
docs.magento.com/m2/ee/user_guide/system/… Vorrei verificare se il tuo sito è in modalità sviluppatore in quanto non è visibile in caso contrario
bjornredemption

Sì, non era in modalità sviluppatore, grazie :)
fritzmg

0

Assicurati anche che l'unione di JS / CSS sia disabilitata quando in modalità sviluppatore questo colpisce davvero le prestazioni, i test mostrano che le velocità possono scendere da 20-30 secondi a 2-3 secondi.

Può sembrare ovvio farlo in modalità sviluppatore, ma se perso può portare a un ambiente incredibilmente lento poiché avevo copiato un ambiente di produzione per svilupparlo e perdere questo per un po '.

Aggiornare

Questo sembra essere un problema che mi stava influenzando in 2.1.7 a 2.1.9 e sembra essere stato risolto in Magento 2.2.X


questa informazione sembra sbagliata. La velocità non dovrebbe scendere con l'unione
mestolo 3000


@ ladle3000 Inoltre, non si vorrebbe davvero unire e minimizzare lo sviluppo rende ancora più difficile vedere quali file devono essere modificati per le modifiche CSS / JS.
Harri,

Vedo i tuoi punti. Penso che forse perché sono migrato direttamente alla 2.2 non l'ho mai affrontato. Su quale versione sei?
mestolo 3000

Questo può essere risolto ora in 2.2.0 ma sembra solo un ulteriore passo. Ho provato a provare questa mattina ma quando abilito in modalità sviluppatore sembra essere ancora disabilitato? Sono il 2.2.3 ora
harri

0

Disabilitare le seguenti cache in modo da non dover eseguire i comandi CLI per cancellare la cache.

CONFIG
LAYOUT_GENERAL_CACHE_TAG
BLOCK_HTML
FPC

0

Il motivo principale per cui magento2 è lento in modalità sviluppatore è legato a migliaia di file statici e compilati generati al volo.

Ci sono 3 soluzioni per questo:

  • Montare l'intera directory con NFS (SSD è ancora obbligatorio).

  • Montare solo la directory dell'app (chiunque l'hardware funzioni correttamente) ma si perde l'accesso alla directory / vendor sul computer host.

  • Montare l'intero progetto con rsync ed escludere le directory in cui vengono generati i file (pub / statico, generato / codice ecc ...).

Puoi provarlo qui: https://github.com/zepgram/magento2-fast-vm/


0

Opcache migliora notevolmente le prestazioni, ma non dimenticare di abilitare la convalida data / ora per evitare l'aggiornamento della cache durante la modifica dei file

opcache.validate_timestamps = On


-4

Per aumentare la velocità del negozio Magento 2, segui questi passaggi:

  • Prima di tutto assicurati di aver soddisfatto tutti i requisiti di sistema e server.
  • Aggiorna Magento all'ultima versione.
  • Abilitato il Varnish Cache
  • Abilitato le categorie piatte e prodotti-Ottimizza immagine, Javascript e CSS
  • Imposta CDN
  • Usa sempre estensioni prive di bug e temi leggeri.
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.