Magento Model Cache

Installs: 584

Dependents: 0

Suggesters: 0

Security: 0

Stars: 15

Watchers: 45

Forks: 6

Open Issues: 1


0.0.2 2014-03-13 14:00 UTC

This package is not auto-updated.

Last update: 2020-11-27 21:14:53 UTC



Load models from cache


$product = Mage::getModel('catalog/product')->load($id);

... with

$product = Mage::helper('aoe_modelcache')->get('catalog/product', $id);

If the model was create before the previous instance will be reused. If it wasn't created before it will be created now.

Forcing clean model

$product = Mage::helper('aoe_modelcache')->get('catalog/product', $id, true);

The difference to Mage::getModel('catalog/product')->load($id) is, that the created model will be cached and can be reused for future calls without the clean parameter

Check if model exists in cache

$modelExists = Mage::helper('aoe_modelcache')->exists('catalog/product', $id);

Remove model from cache

Mage::helper('aoe_modelcache')->removeFromCache('catalog/product', $id);

Finding candidates for optimization

Enable the log from System > Configuration > ADVANCED > Developer > AOE Model Cache Log Settings and check var/log/aoemodelcache.log after hitting a page. You'll find all occurrences of models that have been loaded more than once incl. file and line where the call happened. These items are candidates for replacement by model cache calls.


Please test the shop properly after having any changes in place. Side-effects where fresh objects are expected and a "used" instances is returned are possible.