Time to first Byte senken

ConCAD

Lt. Junior Grade
Dabei seit
Jan. 2011
Beiträge
274
#1
Ich hab mit Joomla 2.5 eine Webseite für meinen Verein erstellt. Problem ist jetzt, dass das Laden der Seite recht lange dauert, was hauptsächlich an der Time-to-first-Byte liegt. Hab das auch mal mit webpagetest.org überprüft, was diese Vermutung bestätigt hat.
Darum meine Frage, wie ich diese Wartezeit verkürzen kann, bis die Homepage überhaupt beginnt zu laden?

Noch ein paar Infos:
- Template mit Artisteer erstellt
- GZip aktiviert
- Caching aktiviert
 

Daaron

Fleet Admiral
Dabei seit
Dez. 2011
Beiträge
13.474
#2
Na ja, wenn TTFB anzeigt, wie lange es zwischen "Request geht an den Server" und "erstes Byte kommt zum Client" dauert, dann weißt du ja, wo du ansetzen kannst:
- mehr pure Rechenpower (teuer)
- optimiertes Handling von HTTP-Requests, z.B. indem man statt nem Apache2 einen anderen httpd einsetzt, der etwas effektiver ist (kannste nur auf nem Rootserver machen, der dir gehört)
- den PHP-Code schneller verarbeiten -> sauberer & kürzerer Code... bei nem CMS kaum möglich
- den PHP-Code mit HipHop in C++ - Code umformen und nativ für den Server kompilieren... wieder kaum möglich

Der ganze Kram wie asynchrones Laden, Caching, GZip,... greift alles erst, wenn das erste Byte beim Client ankommt, also nach der TTFB.
 

dcobra

Lt. Junior Grade
Dabei seit
Aug. 2011
Beiträge
286
#4
@ Daaron: wie kommst du drauf, dass Caching keinen Einfluss auf die TTFB hat? Vor allem, da du im gleichen Atemzug noch erwähnst, den PHP Code schneller zu verarbeiten würde helfen (was in vielen Fällen korrekt ist) ?
 
Zuletzt bearbeitet:

Daaron

Fleet Admiral
Dabei seit
Dez. 2011
Beiträge
13.474
#5
Ich bezog mich auf Browsercaching beim Client.
Dass du serverseitig durch cleveres Caching (z.B. von SQL Abfragen) durchaus Zeit im PHP-Script sparen kannst, ist klar. Nur steht diese Option bei einem vorgegebenen CMS eben auch nicht ohne weiteres offen. Nicht viele Leute haben die Qualifikation und vor allem die Geduld, ihr CMS komplett umzuackern, um einige Funktionen zu opfern und dafür einiges an Leistung zu gewinnen. Ich hab z.B. jetzt schon einige mittelmäßig komplexe Module für Contao geschrieben (aber alles Spezialfälle für unser Kunden, nix was ich je ins Repository packen könnte), trotzdem wüsste ich da nicht einmal ansatzweise, wo ich mit einer Optimierung der Core-Files anfangen müsste.

Browsercaching hingegen setzt so oder so erst ein, wenn es seitens des Browsers darum geht, cachbare Elemente zu laden. Damit das eintritt muss aber erst einmal etwas HTML-Code vom Server rüber kommen um zu erklären, welche zusätzlichen Files man so brauchen könnte.
 

dcobra

Lt. Junior Grade
Dabei seit
Aug. 2011
Beiträge
286
#6
Okay, das war nicht eindeutig was er mit Caching meinte, bezog mich auf die Serverseite :)
Mit einem fertigen CMS hat man halt immer ein Korsett an wie schon angemerkt wurde, da kann man nicht alles umkrempeln.

Ansonsten ist early flushing noch eine Art Königsdisziplin, aber außer Google findet man das auch bei großen Seiten eher nur sparsam eingesetzt.
 
Top