Druckversion des Themas

Hier klicken um das Topic im Orginalformat anzusehen

Forum Sefrengo.org _ Entwicklung _ Zentrales Cache-Verzeichnis im Frontend

Geschrieben von: pawel Sat. 23. May 2009, 20:24

Gibt es eine Idee für ein zentrales cache-Verzeichnis?
Bei Modulen die Content aus dem Web holen z.B. von Flickr, Twitter u.s.w., ist es nötig die Daten lokal zu cachen. Schön wäre es, wenn es da eine Übereinkunft gäbe.

Geschrieben von: bkm Sat. 23. May 2009, 20:35

ZITAT(pawel @ Sat. 23. May 2009, 21:24) *
Gibt es eine Idee für ein zentrales cache-Verzeichnis?

wie wäre es denn mit /cms/files/tmp/meinverzeichnis
dort "cacht" ja auch schon das captcha und ich habe dort z.b. pcdtr um daten abzulegen.

Geschrieben von: pawel Sun. 24. May 2009, 17:56

Da habe ich noch nie nachgeshen, da ich captchas nicht nutze. Sollte man nicht ein Verzeichnis nutzen, was von "außen" nicht erreichbar ist?

Geschrieben von: bjoern Thu. 11. June 2009, 17:08

Kommt drauf an, was Du cachen willst. Nicht sicherheitsrelevante Inhalte kannst Du problemlos unter "files/tmp/deinOrndername" ablegen. Das dürften die Meisten sein, denn die Inhalte werden ja eh öffentlich auf der Webseite gezeigt.

Alternativ kannst Du auch den DB Cache der API nutzen. Der ist auch recht flott und man kann von außen nicht ran. Das geht so:

QUELLTEXT
$cache_object = sf_factoryGetObject('UTILS', 'DbCache');
$cache_key = 'damit finde ich mein zeug';

//cacheitem gefunden
if ($mein_zeug = $cache_object->getCacheEntry($cache_key))
{
     print_r($mein_zeug);
}
//cacheitem nicht gefunden
else
{
     //Inhalt erzeugen
     $mein_zeug = array('ein', 'test');
     //Cache schreiben
     //Parameter 1 ist der Schlüssel, 2 sind die Daten als Array, 3 und 4 sind interne Variablen, die Auswirkungen
     // auf das Löschverhalten des Cache haben, Variable 5 ist die Lebenszeit des Cache in Minuten, hier also 2 Stunden
     $cache_object->insertCacheEntry($cache_key, $mein_zeug, 'custom', '', 120);
}

Geschrieben von: pawel Mon. 29. June 2009, 20:46

Hatte ich bisher übersehen, ist aber eine gute Idee die DB zu nutzen.

Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)