[TYPO3-german] CoolURI beschleunigen

Soetebeer Dirk DSoetebeer at web.de
Sun Apr 27 17:33:38 CEST 2008


Hallo Manfred,

ich nutze derzeit statische URLs ohne spezielle Erweiterung.

Nach dem ersten überblick der Erweiterung bin ich von der Funktionsvielfalt
der Erweiterung CoolURI äußerst beeindruckt. 

Mich schreckt jedoch der Implementierungsaufwand etwas zurück.

Um die Erweiterung nutzen zu können, müssen sowohl auf Webserver-Ebene, als
auch auf Typo3-Ebene viele Änderungen vorgenommen werden.

Daher meine Frage: Gab es bei der Installation irgendwelche Knackpunkte,
worauf man speziell achten muß?

Derzeit ist nachstehende htaccess-Datei für die Umleitung auf Index.php im
webroot im Einsatz:

RewriteEngine On

RewriteRule ^(typo3|t3lib|tslib|fileadmin|typo3conf|typo3temp|uploads
showpic\.php|favicon\.ico)/ - [L]

RewriteRule ^typo3$ typo3/index_re.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule .* index.php [L]

Wären in dieser Datei Anpassungen notwendig?

Gruß,
Dirk

"Manfred Müller-Späth" wrote:

> 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