Magento 2.2 oft extrem langsam, 100% Prozessorauslastung nach dem Setup: Upgrade

12

Ich verwende derzeit Magento 2.2, php7, Apache2eine Amazon AWS EC2 c4.largeInstanz, aber selbst die t2.micro-Instanzen sind normalerweise in Ordnung, wenn ich sie als Entwicklungsserver verwende.

Aus irgendeinem Grund wird mein Server von Zeit zu Zeit, wenn ich Setup ausführe, nach dem Aktualisieren einer der Setup-Dateien in einem meiner benutzerdefinierten Module oder nach der Installation eines Drittanbieter-Moduls extrem langsam und bleibt bei jedem Versuch bei 100% CPU-Auslastung Zum Laden einer Seite dauert das Laden der Seite 1 Minute + und bleibt bei 25% CPU-Auslastung, wenn keine Seiten geladen werden. Dies betrifft nur die Magento-Website, auf der ich Setup: Upgrade aufgerufen habe. Seiten auf anderen Magento-Installationen auf demselben Server werden weiterhin mit normaler Geschwindigkeit geladen.

Manchmal wird das Problem behoben, indem das gerade aktualisierte Modul entfernt, der Server neu gestartet und das Modul dann ohne Änderungen am Code neu installiert wird. Manchmal wird ein zweites Setup durchgeführt: Upgrade behebt das Problem, und manchmal scheint es die einzige Möglichkeit zu sein, es zu beheben durch vollständige Neuinstallation Magento 2und der Module.

Ich habe dies bei Magento 2.1.6, 2.1.8, 2.1.9und 2.2in allen möglichen Kombinationen von Themen und Modulen erlebt, bei denen anscheinend niemand Probleme mit dem Entwickler- und Produktionsmodus hat.

BEARBEITEN: Wichtiger Hinweis
Wenn Sie dieses Problem haben und wie ich sicher sind, dass Sie Ihre Caches nie deaktiviert haben, gibt es ab sofort ein anerkanntes Problem (Magento 2.3), bei dem das Ausführen composer updategelegentlich alle Ihre Caches deaktiviert. Selbst wenn Sie der Meinung sind, dass Ihre Caches aktiviert sind, sollten Sie dies noch einmal überprüfen.

Kaascroissant
quelle
c4.large CPU 2 RAM 3.75 - dies ist eine absolut normale Last. Wenn Sie Codeprobleme haben oder sich im Entwicklermodus befinden.
MagenX
Mein Problem ist, dass es keine Codeprobleme gibt, und selbst im Entwicklermodus sollte es meiner Meinung nach nicht Minuten dauern, bis eine einzelne Seite in genau derselben Konfiguration geladen ist, in der das Laden auf einem Mikroserver weniger als eine halbe Sekunde dauert. In 99% der Fälle gibt es keine Probleme und alles ist extrem schnell, aber scheinbar zufällig bricht die gesamte Installation zusammen und es wird nichts mehr geladen, bis sie ohne Änderungen am Code neu installiert wird.
Kaascroissant
Überprüfen Sie im Produktionsmodus, ob im Entwicklungsmodus js und css im laufenden Betrieb erstellt wurden, damit das Laden einige Zeit in Anspruch nimmt.
Sunil Patel
Ich weiß, aber der Produktionsmodus hat immer noch das gleiche Problem, und wenn das Problem nicht auftritt, laden Entwickler und Standardmodus die Seiten immer noch sehr schnell. Nur gelegentlich wird nach dem Ausführen des Upgrades der gesamte Server unabhängig vom Modus auf Crawlen verlangsamt.
Kaascroissant
irgendwelche Sollutionen? Angesichts der gleichen ...
Jilco Tigchelaar

Antworten:

20

TL; DR: Schalten Sie einfach die Konfigurationscaches ein.

Längere Geschichte:

Ich hatte das gleiche Problem und habe ein bisschen herumgespielt.

Schritte zum Reproduzieren (im Entwicklermodus):

  1. Cache: deaktivieren
  2. Setup: Upgrade
  3. Laden Sie das Frontend oder Backend in einem Browser neu

Beim Neuladen und Überwachen mit htop "spammt" das System einige PHP-Prozesse und nutzt dabei alle CPUs vollständig aus. Zu diesem Zeitpunkt wurde mir klar, dass dies von einigen Cache-Einstellungen abhängen muss. Und ich fing an, einige von ihnen auszuschalten. Nach dem Ausschalten der Konfigurationscaches trat das Problem sofort wieder auf.

Nach dem Ausschalten aller Caches mit Ausnahme des Konfigurationscaches läuft alles wieder schnell.

BuzzJoe
quelle
2
Ich fühle mich im Moment extrem dumm, weil ich schon sehr lange damit zu kämpfen habe, aber mir ist nie in den Sinn gekommen, zu überprüfen, ob der Cache aktiviert ist. Ich habe den Cache nie selbst deaktiviert, aber aus irgendeinem Grund wurden alle Caches deaktiviert. Danke!
Kaascroissant
3
Ich habe im Standardmodus festgestellt, wenn Sie Setup ausführen: Upgrade Magento Caches sind deaktiviert
Dominic Xigen
4

Wenn Sie mit Composer aktualisiert haben, ist Ihr Cache wahrscheinlich deaktiviert. Dies gilt für Versionen bis 2.3.1. Aktivieren Sie es einfach mit dem folgenden Code im Magento-Stammordner.

php bin/magento cache:enable

Abro
quelle
Aus irgendeinem Grund, nachdem setup:upgrade der Cache deaktiviert wurde. Sehr seltsam, aber das hat es für mich gelöst.
BugHunterUK
1

Ich habe die gleiche Situation wie Sie, ich renne:

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

um M2 zu zwingen, die statischen Daten im Entwicklermodus bereitzustellen, um das lange Warten zu überspringen.

Ethan L.
quelle
0

Bin / Magento-Cache: Bin / Magento-Cache leeren: Aktivieren

Ich mache diese beiden Schritte zusammen, sobald das Upgrade abgeschlossen ist. Das System wird immer noch von Millionen von Cron-Jobs gespammt, von denen ich keine Ahnung habe, was sie tun. Aber die Welt kehrte zum Frieden zurück, nachdem der Cache aktiviert wurde. Es ist bereits 2020, warum Magento noch unreif ist.

AutoBeauty
quelle