Zend Framework > Performance > Zend_Cache > Konfiguration

Das Zend Framework ist dafür bekannt, ziemlich viel Performance zu verschlucken. Ist auch kein Wunder bei so viel Objektorientierung…
Damit man sich ein wenig von der Performance zurückholen kann, gibt es einige Standard-Cache-Funktionen, die relativ einfach ohne großen Aufwand einzubauen sind. Standardmäßig können die Module Zend_Locale, Zend_Translate und Zend_Db_Table den Cache nutzen. Wie man die Anwendung entsprechend konfiguriert, wird in diesem kleinen How-To erklärt.
Beachte: Dies ist lediglich eine Standard-Konfiguration für das Caching mit normalen Dateien (File-Backend).

Als erstes muss folgender Abschnitt in die config.ini der Anwendung eingefügt werden:

; Cache Konfiguration
resources.cachemanager.core.frontend.name = Core
resources.cachemanager.core.frontend.options.lifetime = 86400
resources.cachemanager.core.frontend.options.automatic_serialization = true
resources.cachemanager.core.backend.name = File
resources.cachemanager.core.backend.options.cache_dir = ROOT_PATH "/var/cache"

Der Parameter cache_dir sollte ggf. angepasst werden je nachdem, wo die Cache-Dateien abgelegt werden sollen.

Dann folgt die Änderungen in der Bootstrap-Klasse.

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
	public function __construct($application)
	{
		parent::__construct($application);
 
		$this->bootstrap('cachemanager');
		$cache = $this->getResource('cachemanager')->getCache('core');
 
		Zend_Locale::setCache($cache);
		Zend_Translate::setCache($cache);
		Zend_Db_Table_Abstract::setDefaultMetadataCache($cache);
 
		// Und die anderen Resources...
		$this->bootstrap('frontController');
		[...]
	}
 
	// Weitere Methoden
	[...]
}

Und das war’s auch schon. Jetzt verwenden Zend_Locale, Zend_Translate und Zend_Db_Table automatisch die Cache-Funktionen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.