phpbar.de logo

Mailinglisten-Archive

[pear] Tamplates - mit oder ohne Caching?

[pear] Tamplates - mit oder ohne Caching?

Thomas Schulz ths at 4bconsult.de
Fre Jul 18 11:33:30 CEST 2003


Christian wrote:

> Also ich suche für ein neues Projekt eine Template-Engine. Zur auswahl
> stehen mir da ja nun Template_Sigma, Template_IT, Xipe oder Smarty. Die
> größte frage ist nun ob eine mit oder ohne Caching? Ausser der IT-Eninge
> können die ja nun alte cachen, nurwelche Engine ist da die beste?

Schau mal etwas genauer, was genau gecacht wird. Prinzipiell mußt du da
unterscheiden zwischen einem Caching des HTML-Output und dem
"Compilieren" des Template (Umwandlung von Template-Code in PHP-Code).
Sigma "cacht" IMHO nur letzteres. Zum Caching des HTML-Output mußt du
dort zusätzlich Cache(_Lite) o.ä. bemühen.

Die folgenden Hinweise sind Smarty-gefärbt.

> Kann
> man bei denen z.b. auch vorher abfragen ob die daten für das template
> sich geändert haben, oder nehmen die solange die gecachte seite bis das
> "verfallsdatum" abgelaufen is?

Du generierst eine CacheID, die für den gewählten Inhalt eindeutig ist.
Der Cache wird neu generiert, wenn sich die CacheID ändert oder der
Cache abgelaufen ist. Das Verfallsdatum läßt sich auch individuell für
jedes Template setzten.

Ob sich die zugrundeliegenden Daten ändern, mußt du in deiner
Applikation feststellen und kannst dann bei Bedarf die Caches
aller/einzelner Templates oder CacheIDs (auch gruppierbar) löschen.

> Und wann ist cachen
> überhaubt sinvoll? Meine seite wird wohl rehct dynamisch werden, d.h.
> mindestns einmal am tag wird sich wohl fats jede seite verändern.

Prinzipiell ist es nur sinnvoll, wenn man die Last auf seinem Server
oder die Zeiten für die Auslieferung der Seiten zu reduzieren will/muß.
Auch macht natürlich nur Sinn, wenn der selbe Inhalt vor dem Verfall des
Cachens auch nochmal angefordert wird. Bei stark individualisierten
Seiten kann man aber auch einzele Seitenelemente cachen bzw. vom Caching
ausnehmen.

> Dann würde mich auchnoch die geschwindigkeit der Templates interesieren?
> Sind die mitlerweile alle halbwegs gleich schnell, oder gibt es da große
> unterschiede?

Prinzipbedingt sollten "compilierende" Template-Engines schneller sein,
weil nicht bei jedem Aufruf die Platzhalter per regex ersetzt werden.

ThS.

--
http://4bconsult.de


php::bar PHP Wiki   -   Listenarchive