
Wir haben gerade damit begonnen, mehr JavaScript in der Weboberfläche einer internen Anwendung zu verwenden (PHP, falls das wichtig ist). Jetzt, da die Änderungen umgesetzt sind, wird sehr deutlich, dass die Seite durch Squid umso langsamer geladen wird, je mehr JavaScript auf der Seite vorhanden ist.
Irgendwelche Vorschläge, warum das passiert? Ich möchte nicht, dass die Frage zu vage ist, aber ich möchte nichts vorschlagen, wenn ich nicht weiß, wonach ich suche.
Eine Sache ist mir eingefallen: Was ist, wenn die Seiten ohne JavaScript nicht zwischengespeichert werden und unser Squid-Server heimlich langsam ist? Wie teste ich das?
Bitte erleuchte mich!
Aktualisierung 1Das gesamte JavaScript wird zwischengespeichert und vom Proxy-Server abgerufen. Der größte Datenblock (~60 KB) ist das generierte HTML und das ist jedes Mal ein Fehler.
Aktualisierung 2Es gibt kein Ajax, das JavaScript ist auf eine schwebende Symbolleiste beschränkt und verarbeitet einige Textvoranalysen für eine Suchfunktion, es ist eine einfache Regel, die auf „Wenn es x Zeichen hat, suchen Sie nach einer passenden Bestellnummer“ basiert.
Bei näherer Betrachtung wird das gesamte zwischengespeicherte JavaScript überprüft, ob es die neueste Version ist, bevor es weitergeleitet wird. TCP_REFRESH_HIT/304
Ich habe das Gefühl, dass dies mein Engpass sein könnte, wenn ich ein Problem auslöse.
Antwort1
Überprüfen Sie Ihr Squid-Zugriffsprotokoll und suchen Sie nach TCP_HIT. Dadurch erfahren Sie, welche Seiten aus dem Cache bereitgestellt bzw. weitergeleitet werden.
Antwort2
Vom Client aus können Sie nicht absolut sicher sein, ob Sie sich über Squid verbinden. Möglicherweise ist der Header „X-Forwarded-For“ vorhanden.
Versuchen Sie auch, direkt auf die Site zuzugreifen. Ist sie dann schnell oder ist nur Ihr Browser selbst aufgrund der ganzen JavaScript-Geschichte langsam?
Antwort3
Was genau meinen Sie mit „habe angefangen, mehr JavaScript zu verwenden“? Wenn Sie AJAX mit zahlreichen gleichzeitigen Aufrufen/Abrufen einsetzen, erreichen Sie möglicherweise das Limit für gleichzeitige Clientverbindungen.