Frontend Geschwindigkeit

falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Frontend Geschwindigkeit

Beitrag 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.
Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix »

bist du bei 1&1?
Gruß
Florian
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag von falkirk »

Nein ich bin nicht bei 1&1.
Ich betreibe wirklich einen echten eigenen Server der hier bei mir steht.
Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix »

upps :oops: 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
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag 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?
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Vermutlich benötigt das Resize der Illustration rechts oben Zeit... mal testweise rausnehmen...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag 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.
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag 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.
Jon
Beiträge: 14
Registriert: Sa 9. Jul 2005, 14:43
Wohnort: Berlin
Kontaktdaten:

Beitrag 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.
Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag 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.

Code: Alles auswählen

$image = $img_path_fs; 
ungetestet.
Viel Erfolg
Florian
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag 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.
Jon
Beiträge: 14
Registriert: Sa 9. Jul 2005, 14:43
Wohnort: Berlin
Kontaktdaten:

Beitrag 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. :wink: Aber falls Du das oben einfach nur übersehen hast, dann probier es doch nochmal.

Gruß,
Jon
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag 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").'"/>';

?>
Jon
Beiträge: 14
Registriert: Sa 9. Jul 2005, 14:43
Wohnort: Berlin
Kontaktdaten:

Beitrag 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
falkirk
Beiträge: 17
Registriert: So 12. Feb 2006, 19:47
Kontaktdaten:

Beitrag 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.
Gesperrt