Ein E-Shop hat sich mit Hilfe von Prestashop entwickelt und auf die drei Server gestellt:
die erste 2 ist amazon, sollte die gleiche Einstellung sein
Server 1: Ссылка
Server 2: Ссылка
das letzte ist nur lokale hosting
Server 3: Ссылка
Das Problem ist, dass Server 1 im Vergleich zu den anderen zwei Servern sehr langsam lädt, aber die Leistung sollte die beste unter den drei sein.
Es sieht so aus, als ob Server 1 die Dateien nicht zwischenspeichern würde
aber tatsächlich haben alle von ihnen
Aktivieren Sie den Smarty-Cache, indem Sie das Dateisystem verwenden und re-kompilieren, wenn Sie modifizieren und Schalten Sie den Dateisystem-Cache ein
Da der Code und die Servereinstellungen identisch sind, sind beide Amazon-Server die gleiche Einstellung und localhost ist ein anderer Server, sollte jedoch langsamer sein als Server 1
1) Wie debugge / überprüfe ich, ob die Datei bereits einen Cache benutzt?
(Die Cachedatei wird im Cache / Smarty und Cache / Cachefs im Server gefunden)
2) Und was kostet die lange Ladezeit für Server 1? Betrachten Sie es einfach als eine PHP-Seite, irgendwelche Möglichkeiten zu überprüfen, warum es langsam ist?
Vielen Dank für Ihre Hilfe
Lesen Sie die Kommentare - Ich habe die Daten, die ich mir vorher angesehen habe, falsch interpretiert. Es scheint, dass der Server nur 5-10 Anfragen gleichzeitig bearbeiten kann, so dass die Dinge blockiert werden, bis die anderen Dinge geladen sind. Sie müssen wahrscheinlich nur die Konfiguration Ihres Webservers aktualisieren, um weitere Anfragen zu bearbeiten.
Es gibt auch viele JS-Daten in der Datei. Es ist 318KB, nur um die Seite zu laden, und es muss viele Anfragen machen, um JS / CSS-Dateien zu bekommen, bevor es überhaupt zu irgendeinem des HTML kommt. Also ist es 318KB + all die externe JS / CSS, die es braucht, um zu holen (wow!). Das ist wie 4MB Sachen nur um eine Seite zu laden.
Überprüfen Sie den Änderungszeitstempel für die von Ihrem Caching-System generierten Dateien, um zu überprüfen, ob das Caching funktioniert.
Bearbeiten:
Da es jetzt ein Kopfgeld gibt - bitte lesen Sie die Kommentardiskussion, die wir hatten. Es gibt ein Problem, bei dem eine Traceroute nicht zum Serverziel gelangt und ich vermute, dass dies mit der Langsamkeit zusammenhängt, aber diese Art von Netzwerkproblem ist über meinem Kopf.
Ich gebe Antwort auf Ihre zweite Frage.
Ich kenne das genaue Problem des langsamen Ladens nicht. Aber wir hatten dasselbe Problem in einem unserer Projekte im letzten Monat. Server war Amazon.
Einer unserer Instanzen war sehr langsam. Wir hatten viele Lösungen ausprobiert, aber keine funktionierte. Dann haben wir eine Lösung gefunden, die sehr unfair aussieht, aber für uns funktioniert.
Wir hatten gerade die langsame Instanz neu gestartet und wir haben Erfolg.
Ich hoffe, dass diese Lösung auch für Sie funktioniert.
Alles Gute :)
Beantworten Sie die Frage 1 :
Sie können das Werkzeug chrome developer , F12 und dann die Registerkarte Netzwerk verwenden. Es zeigt Ihnen alle heruntergeladenen Dateien in der Spalte Größe, die Sie finden können, wenn es aus dem Cache geladen wird oder nicht.
Antwort auf Frage 2 :
Sie können das YSlow-Plugin von chrome verwenden. Es wird Ihnen sehr helfen, aber es ist offensichtlich, dass Sie auf Ihrer Website zu viele Dateien haben. css, js und viele Bilder; Versuchen Sie, Ihre CSS- und JS-Dateien zusammenzuführen und Image-Map für Ihre Bilder zu verwenden.
Hoffe, dass Sie Ihr Problem lösen können
Kein Körper kann die Antwort klären, was das Problem mit den Servern ist. Aber Sie können es mit Profiling finden. Wenn Sie ein Budget haben, empfehle ich Ihnen, ein Profiling-Tool "Tideways.io", "Blackfire" oder "New Relic" zu kaufen. Ich habe New Relic benutzt, und es hilft wirklich, Engpässe zu finden. Wenn Sie kein Budget haben, um ein Profiling-Tool zu erhalten, können Sie php Profilerweiterung Xdebug verwenden. Es ist auch hilfreich, aber das Lesen der Profilausgabe von xdebug kann etwas schwierig sein. Aber das Setup ist wirklich einfach, und Sie können partielles Profiling (Sie können Profil-URL, das Sie wollen) mit "xdebug profile trigger" statt Profiling alle Anfragen tun.
Verwenden Sie dieses Google Solid Tool, um einen Einblick in die Leistung Ihrer Seite zu erhalten.
Ссылка .
Überprüfen Sie auch, ob Server1 die Server2-Konfiguration erfüllt.
Dieses Tool zeigt mir viele Verbesserungsvorschläge für Ihre Website.
Tags und Links html optimization php prestashop prestashop-1.6