Magento 1.5 und "Eine oder mehr Cache-Arten sind außer Kraft: Block HTML Ausgabe"...
Von Thomas Heilmann, veröffentlicht am 13.07.2011
Seit Version 1.5 von Magento gibt es ein interessantes "Feature": Bei jedem Speichern eines Produkts wird der Block HTML Cache außer Kraft gesetzt, anstatt aktualisiert zu werden.
Von offizieller Seite wird dieses Verhalten als Feature dargestellt; so würden Performance Probleme verhindert, wenn viele Redakteure gleichzeitig Produkte bearbeiten. Freilich wird das in den wenigsten Szenarien der Fall sein. Deshalb gibt es auch bereits zahlreiche Workarounds für dieses Problem.
Eine Lösung wird auf auf dem Blog von inchoo vorgestellt. Dort wird die Klasse Mage_CatalogRule_Model_Rule überschrieben, die für die Cache-Invalidierung verantwortlich ist, und um eine Funktion zum Neuaufbau des Block HTML Caches ergänzt.
Noch etwas eleganter ist die Lösung von Toni Grigoriu, auf die er in einem Kommentar verweist. Statt eine Klasse zu überschreiben (immer potentiell konfliktträchtig), setzt er auf Events. Das ist eine schlanke und saubere Lösung.
Sollte man tatsächlich beim intensiven Bearbeiten von Produkten etwas Performance einsparen wollen, kann man den Aufruf
Mage::app()->getCacheInstance()->cleanType('block_html');
natürlich auch über einen cron-Job ausführen lassen.