Seite 1 von 2
Frontend Geschwindigkeit
Verfasst: So 12. Feb 2006, 20:22
von falkirk
Problem:
Langsames Laden der Frontend Seiten.
Webseite:
http://www.bertrams-salt.ch/cms
Dass das Laden der RSS Startseite etwas länger dauern kann ist ja noch nachvollziehbar, aber bei den restlichen Seiten dauert das Laden ebenfalls lange, was sicherlich nicht normal ist.
Intressant dabei ist jedoch dass ein Teil der Seite (manchmal Menu + Text oder auch nur der Text) sofort erscheinen, und das laden vom rest der Seite dann wieder länger dauert.
Ich betreibe einen eigenen Webserver (Win2003 SMB) mit:
- Contenido 4.6.4
- IIS 6
- MySQL 4.1.16
- PHP 5.1.2
Versuchte Lösungen:
- extension=php_gettext.dll habe ich in php.ini aktiv. Dies hat zwar schon etwas gebracht, aber leider ist es immer noch langsam. --> nur minimal schneller
- Forumbeitrag:
http://contenido.org/forum/viewtopic.php?t=10151 --> ebenfalls nur minimal schneller wenn überhaupt.
Leider habe ich keine Ahnung woran dies liegen könnte.
Ich vermute zwar ein Problem mit MySQL, dies ist aber rein spekulativ. Gibt es evtl. dazu noch hilfe zur Performance verbesserung.
Ich hoffe dass Ihr mir bei diesem Problem weiterhelfen, oder zumindest Lösungsansätze geben könnt.
Verfasst: Mo 13. Feb 2006, 23:41
von Beleuchtfix
bist du bei 1&1?
Gruß
Florian
Verfasst: Di 14. Feb 2006, 09:58
von falkirk
Nein ich bin nicht bei 1&1.
Ich betreibe wirklich einen echten eigenen Server der hier bei mir steht.
Verfasst: Di 14. Feb 2006, 10:27
von Beleuchtfix
upps

ich hätte ja auch deinen Artikel richtig lesen können, sorry. Nur haben wir mir 1&1 mehr Probleme als mit einem anderen Servern .....
Dann kann ich dir leider nicht weiterhelfen. Aber schau einmal unter dem Stichwort Geschwindigkeit, da gab es etwas in letzter Zeit,
Viel Erfolg
Florian
Verfasst: Di 14. Feb 2006, 18:54
von falkirk
Mir reichts jetzt mir RSS.
Es war mir schon klar dass RSS der Hauptgrund für die lange Ladezeit der Startseite war.
Ich habe deshalb RSS jetzt komplett deaktiviert.
Die Ladezeit der Startseite hat sich dadurch natürlich auf 3sec. gemässigt.
!! Was mich aber immer noch sehr stört, ist der unregelmässige Aufbau. !!
??Wieso kommen Text + Menu sofort und der rest der Seite immer mit einer Verzögerung von 3 Sekunden.??
Wo liegt da das Problem?
Verfasst: Do 16. Feb 2006, 21:35
von HerrB
Vermutlich benötigt das Resize der Illustration rechts oben Zeit... mal testweise rausnehmen...
Gruß
HerrB
Verfasst: Fr 17. Feb 2006, 12:22
von falkirk
Vielen Dank für dein Tip.
Es ist tatsächlich das Illustrations Modul, was den Aufbau der Seite verlangsamt.
Leider habe ich nicht herausgefunden was ich im Code vom Illustrations Modul ändern muss.
Kannst du mir evtl. sagen welche codezeile ich im Input resp. Output verändern muss um das Resize zu verhindern.
Verfasst: Di 28. Feb 2006, 08:58
von falkirk
--> HerrB
Leider habe ich immer noch nicht herausgefunden was ich in dem Illustrations-Modul ändern muss um die Lade-Geschwindigkeit zu erhöhen.
Das Illustrations-Modul ist das von der Contenido Default Seite.
Ich habe daran auch nichts verändert.
Es wäre schön wenn mir jemand sagen könnte was ich im Code verändern muss, um den langsamen Resize nicht zu verwenden, da ich die Bilder sowieso immer im richtigen Format importiere.
Verfasst: Di 28. Feb 2006, 10:14
von Jon
Hallo falkirk!
Hast Du denn schon mal probiert das Resize aus dem Modul rauszunehmen? Also ungefähr so; am Ende des Modul Outputs:
Code: Alles auswählen
#Scale image
//$image = capiImgScale($img_path_fs, $img_width, $img_height, false, false, 10, false);
#Get dimensions of scaled image
//list ($width, $height, $type, $attr) = getimagesize($image);
#Output image tag
echo '<img src="'.$img_path.'" width="'.$img_width.'" height="'.$img_height.'" alt="'.mi18n("Illustration").'" title="'.mi18n("Illustration").'"/>';
?>
Falls das nicht hilft, lag es schon mal nicht am Resize. Du musst bei der Variante oben natürlich gewährleisten, dass das Bild die richtige Größe hat.
Gruß,
Jon.
Verfasst: Di 28. Feb 2006, 10:47
von Beleuchtfix
@falkirk
Ich wollte dir auch schon vorschlagen, einmal in den Code zu schauen. Das Modul hat 42 Zeilen, davon fast die Hälfte Kommentare.
So beim ersten Überblick habe ich noch gefunden, dass du $image natürlich setzen musst.
ungetestet.
Viel Erfolg
Florian
Verfasst: Di 28. Feb 2006, 10:47
von falkirk
Vielen Dank für deine Antwort Jon.
Diese Zeilen habe ich aus dem Code bereits einmal entfernt.
Aber das Resultat war, dass kein Bild mehr angezeigt wurde.
Ich bin nicht sicher ob es wirklich am Resize liegt --> Es war ein Tip von "HerrB".
Ich weiss nur wenn ich das Illustrations-Modul entferne ist die Geschwindigkeit super.
Verfasst: Di 28. Feb 2006, 11:02
von Jon
Hallo!
falkirk hat geschrieben:Diese Zeilen habe ich aus dem Code bereits einmal entfernt.
Aber das Resultat war, dass kein Bild mehr angezeigt wurde.
Du hast aber schon die letzte Zeile so geändert, wie oben beschrieben?
Code: Alles auswählen
echo '<img src="'.$img_path.'" width="'.$img_width.'" height="'.$img_height.'" alt="'.mi18n("Illustration").'" title="'.mi18n("Illustration").'"/>';
Hier mussten nämlich $image durch $img_path, $width durch $img_width und $height durch $img_height ersetzt werden.
Ich bin nicht sicher ob es wirklich am Resize liegt
Ich auch nicht.

Aber falls Du das oben einfach nur übersehen hast, dann probier es doch nochmal.
Gruß,
Jon
Verfasst: Di 28. Feb 2006, 14:46
von falkirk
Ich habe eure Vorschläge jetzt ausprobiert.
Leider werden die Biilder jetzt nicht mehr korrekt angezeigt, da die Pfadangabe der Bilder falsch umgesetzt wird. (file:///D:/Inetpub/wwwroot/.......)
Ich habe anschliessend im Code folgende Code-Zeile gelöscht.
Code: Alles auswählen
$frontendpath = $cfgClient[$client]['path']['frontend'];
Dananch wurden einige Illustrations Bilder angezeigt, und die Geschwindigkeit war super.
Dies ist aber sicherlich nicht die korrekte Lösung. Ich habe unten den ganzen Code gepostet (inkl. $frontendpath)
Vielleicht könnt Ihr mir bei der Anpassung des Codes behilflich sein.
Hier der Output Code:
Code: Alles auswählen
<?php
#Selected img directory
$cms_dirname = "CMS_VALUE[1]";
#Selected img
$cms_filename = "CMS_VALUE[2]";
#Default settings
$img_width = 170;
$img_height = 80;
$defaultImage = 'bilder/illu.jpg';
$htmlpath = $cfgClient[$client]['path']['htmlpath'];
$frontendpath = $cfgClient[$client]['path']['frontend'];
$img_path = $htmlpath.$cfgClient[$client]['upload'].$defaultImage;
$img_path_fs = $frontendpath.$cfgClient[$client]['upload'].$defaultImage;
#Check configured images
if ($cms_dirname != '0' AND $cms_filename != '0' AND strlen($cms_dirname) > 0 AND strlen($cms_filename) > 0) {
$img_path = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
$img_path_fs = $frontendpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
$img_split = preg_split("/\./", $cms_filename);
$count = count($img_split);
$type = $img_split[$count -1];
if (!file_exists($img_path_fs)) {
$img_path = $htmlpath.$cfgClient[$client]['upload'].$defaultImage;
$img_path_fs = $frontendpath.$cfgClient[$client]['upload'].$defaultImage;
}
}
#Scale image
$image = $img_path_fs;
#Get dimensions of scaled image
list ($width, $height, $type, $attr) = getimagesize($image);
#Output image tag
echo '<img src="'.$image.'" width="'.$width.'" height="'.$height.'" alt="'.mi18n("Illustration").'" title="'.mi18n("Illustration").'"/>';
?>
Verfasst: Di 28. Feb 2006, 15:39
von Jon
Probier doch mal bitte diese minimalistische Version hier aus, wenn du das Skalieren sowieso nicht brauchst. Nicht vergessen die Konfigurationen nach dem Update des Moduls zu checken.
Code: Alles auswählen
<?php
#Selected img directory
$cms_dirname = "CMS_VALUE[1]";
#Selected img
$cms_filename = "CMS_VALUE[2]";
#Default settings
$img_width = 170;
$img_height = 80;
$img_path = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
#Output image tag
echo '<img src="'.$img_path.'" width="'.$img_width.'" height="'.$img_height.'" alt="'.mi18n("Illustration").'" title="'.mi18n("Illustration").'"/>';
?>
Wenn das nicht geht, solltest Du mal überprüfen, ob die Pfade für Deinen Mandanten auch richtig gesetzt sind.
Gruß,
Jon
Verfasst: Di 28. Feb 2006, 16:23
von falkirk
Vielen Dank Jon.
Die Geschwindigkeit ist mit deinem minimal Code jetzt super.
Nur eines noch. Wenn ich kein Template im Artikel ausgewählt habe,
resp. kein Bild erscheint jetzt keine (Default) Grafik mehr.
Dies hat vorher funktioniert.
Ist aber nicht so schlimm.
Ich habe jetzt einfach in allen Artikeln ein Template resp. ein Bild zugeteilt.