Типовые задачи, чтобы не забыть
Записки обо всём, с чем приходится столкнуться по работе и что полезно не забывать. python, php, ZendFramework, NOSQL и т.д.
31 августа 2011 г.
10 августа 2011 г.
Простое кеширование вызовов Zend_Db_Table
Кеширование вызовов моделей (да и любых других классов) в зенде классически реализуется с помощью Zend_Cache_Frontend_Class.
В оригинале это выглядит примерно так:
Этот путь мне не понравился сразу по нескольким причинам.
Во первых - удваивание количества сущностей. Когда моделей много и Вы используете не по одной модельке на запрос монструозненько получается.
Во вторых - слишком много настроек кеша. Это очень хорошо и к месту, когда логика кеша сложна или нетривиальна. В моём случае весь кеш работает с одними и теми же настройками и совершать лишних телодвижений по его инстанцированию не хотелось бы.
В оригинале это выглядит примерно так:
Copy Source | Copy HTML
$model = MyModel();
- $model_cached = MyModelCached();
- $values_direct = $model->doStuff();
- $values_cached = $model_cached->doStuff();
Этот путь мне не понравился сразу по нескольким причинам.
Во первых - удваивание количества сущностей. Когда моделей много и Вы используете не по одной модельке на запрос монструозненько получается.
Во вторых - слишком много настроек кеша. Это очень хорошо и к месту, когда логика кеша сложна или нетривиальна. В моём случае весь кеш работает с одними и теми же настройками и совершать лишних телодвижений по его инстанцированию не хотелось бы.
Подписаться на:
Сообщения (Atom)