[TYPO3-german] CoolURI beschleunigen

Tobias Pierschel tobias.pierschel at vision-pool.de
Sun Apr 27 18:01:42 CEST 2008


Hi Manfred,
das werden wir morgen sofort testen.
Danke!


Gruß
 T o b i

Manfred Müller-Späth schrieb:
> Hallo!
> 
> Mal eine kleine Erfahrung von mir, die mir meine Seite um bis zu dem Faktor 10 schneller gemacht hat.
> 
> Ich betreibe eine Seite mit TYPO3 4.1.6, YAML und mm_forum. Dabei habe ich auch CoolURI eingesetzt. Ich habe dieses stark auf mm_forum angepasst, so dass so gut wie keine Paramter mehr in den URLs vorkommen. Dies führte zu vielen Einträgen in der Datenbank-Tabelle "link_cache" (mehr als 40.000, das Forum hat viele Einträge und die PNs sind auch beliebt ...)
> 
> Das führte aber dazu, dass bei ca. 30 eingeloggten Usern die Antwortzeiten auf bis zu 30 Sekunden anstiegen (2-3 Sekunden wären ok gewesen). Nach einigem Forschen fand ich durch das Studieren der slow-queries.log von mySQL heraus, dass es fast immer CoolURI-Queries waren, die sehr lange Laufzeiten hatten. Es stellte sich heraus, dass eine Query der Form
> 
> SELECT *, DATEDIFF(NOW(),tstamp) AS daydiff FROM link_cache WHERE params='a:1:{s:2:\"id\";s:2:\"90\";}'; (nur ein Beispiel)
> 
> lange Antwortzeiten lieferte. Ein Hinzufügen eines Index' über 'params' mit einer Länge von 1024 (es handelt sich um einen Blob, ein varchar wäre an dieser Stelle für's Indizieren evtl. besser gewesen ...) hat das Problem mit einem Schlag gelöst. Ich habe wieder Antwortzeiten um die 1 bis 2 Sekunden ... so muss das sein. Die Tabelle sieht nun so aus:
> 
> CREATE TABLE `link_cache` (
> `id` int(10) unsigned NOT NULL auto_increment,
> `params` blob,
> `url` varchar(255) default NULL,
> `tstamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
> `crdatetime` datetime default NULL,
> `sticky` tinyint(1) unsigned default '0',
> PRIMARY KEY (`id`),
> KEY `url` (`url`),
> KEY `params` (`params`(1000))
> ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
> 
> Die Größe des indizierten Bereichs kann natürlich auf die eigenen Bedürfnisse angepaßt werden.
> 
> Evtl. hilft es ja jemandem weiter ...
> 
> Gruß, Manfred 


More information about the TYPO3-german mailing list