aoepeople/aoe_modelcache

Magento Model Cache

Installs: 587

Dependents: 0

Suggesters: 0

Security: 0

Stars: 15

Watchers: 40

Forks: 7

Open Issues: 1

Type:magento-module

0.0.2 2014-03-13 14:00 UTC

This package is not auto-updated.

Last update: 2024-11-09 18:11:38 UTC


README

Instructions

Load models from cache

Replace...

$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.

Caution!

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.