Magento 2.2 spesso estremamente lento, utilizzo del processore al 100% dopo l'installazione: aggiornamento


12

Attualmente sto correndo Magento 2.2, php7, Apache2su Amazon AWS EC2 c4.largeun'istanza, ma anche le istanze t2.micro di solito vanno bene quando la utilizzo come server di sviluppo.

Per qualche motivo ogni tanto quando eseguo il programma di installazione: eseguo l'aggiornamento dopo aver aggiornato uno dei file di installazione in uno dei miei moduli personalizzati o dopo aver installato un modulo di terze parti il ​​mio server diventerà estremamente lento, rimanendo al 100% della CPU ogni volta che provo per caricare una pagina, il caricamento della pagina richiede 1 minuto + e rimarrà al 25% di utilizzo della cpu quando non si caricano le pagine. Riguarda solo il sito Web di Magento in cui ho chiamato setup: upgrade, le pagine su altre installazioni di Magento sullo stesso server verranno comunque caricate a velocità normale.

A volte il problema viene risolto rimuovendo il modulo che ho appena aggiornato, riavviando il server e quindi reinstallando il modulo senza alcuna modifica al codice, a volte una seconda configurazione: l'aggiornamento risolve il problema, e a volte sembra che l'unico modo per risolverlo sia reinstallando completamente Magento 2e i moduli.

Ho avuto questo verificarsi su , Magento 2.1.6, 2.1.8, 2.1.9e 2.2tutti i tipi di diverse combinazioni di temi e moduli che nessun altro sembra avere problemi con, per impostazione predefinita, modalità di sviluppo e produzione.

EDIT: Nota importante
Se stai riscontrando questo problema e, come me, sei sicuro che non hai mai disabilitato le tue cache, c'è un problema riconosciuto sin da ora (Magento 2.3) in cui l'esecuzione composer updateoccasionalmente disabilita tutte le tue cache. Quindi, anche se pensi che le tue cache siano abilitate, vale la pena ricontrollare.


c4.large CPU 2 RAM 3.75 - questo è un carico assolutamente normale. in caso di problemi con il codice o in modalità sviluppatore.
MagenX,

Il mio problema è che non ci sono problemi di codice e anche in modalità sviluppatore non credo che dovrebbero essere necessari minuti per caricare una singola pagina nella stessa identica configurazione che impiega meno di mezzo secondo per caricarsi su un micro server. Il 99% delle volte non ci sono problemi e tutto è estremamente veloce, ma apparentemente casualmente l'intera installazione si interrompe e nulla si carica più fino a quando non viene reinstallato senza modifiche al codice.
Kaascroissant,

Verificare con la modalità di produzione, in modalità di sviluppo js e css creati al volo, quindi ci vorrà del tempo per caricare.
Sunil Patel,

Lo so, ma la modalità di produzione ha ancora lo stesso problema e quando il problema non si verifica lo sviluppatore e la modalità predefinita caricano ancora le pagine molto velocemente, solo occasionalmente dopo l'esecuzione dell'aggiornamento l'intero server viene rallentato a una ricerca per indicizzazione indipendentemente dalla modalità.
Kaascroissant,

qualche sollution? Di fronte allo stesso ...
Jilco Tigchelaar,

Risposte:


20

TL; DR: basta accendere le cache di configurazione.

Storia più lunga:

Ho avuto lo stesso problema e ci ho giocato un po '.

Passaggi per riprodurre (in modalità sviluppatore):

  1. Cache: disable
  2. messa a punto: aggiornamento
  3. ricaricare frontend o backend in un browser

Quando si ricarica e si monitora con htop, il sistema "spamma" alcuni processi PHP, utilizzando totalmente tutte le CPU. Questo è quando mi sono reso conto che deve dipendere da alcune impostazioni della cache. E ho iniziato a spegnerne alcuni. Dopo aver spento le cache di configurazione, il problema è riapparso all'istante.

Dopo aver spento tutte le cache tranne la cache di configurazione, tutto torna di nuovo veloce.


2
Mi sento estremamente stupido in questo momento perché ho lottato con questo per molto tempo, ma non mi è mai venuto in mente di verificare se la cache era attiva. Non ho mai disabilitato la cache da solo, ma per qualche ragione tutte le cache sono state disabilitate. Grazie!
Kaascroissant,

3
Ho notato in modalità predefinita se si esegue l'installazione: l'aggiornamento delle cache di Magento è disabilitato
Dominic Xigen

4

Se hai aggiornato utilizzando il compositore, è probabile che la cache sia disabilitata. Questo vale per le versioni fino alla 2.3.1. Abilitalo semplicemente usando il seguente codice nella cartella principale di Magento.

php bin/magento cache:enable


Per qualche motivo dopo che setup:upgrade la cache si disabilita. Molto strano, ma questo mi ha risolto.
BugHunterUK

1

Ho la tua stessa situazione, corro:

php bin/magento setup:static-content:deploy -f

forzare M2 a distribuire i dati statici in modalità sviluppatore per saltare la lunga attesa.


0

bin / magento cache: flush bin / magento cache: abilita

Faccio questi due passaggi insieme non appena l'aggiornamento è stato completato. Il sistema è ancora spammato da milioni di cron job che non ho idea di cosa stiano facendo. Ma il mondo è tornato in pace dopo che la cache è stata abilitata. È già il 2020, perché Magento è ancora immaturo.

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.