Absinthe
жожо
DQL.То есть, должно быть 100% покрытие моделями. Никогда не пишем голый SQL, любые операции с данными - только через AR.
Вопрос: Так в реальной жизни бывает?
DQL.То есть, должно быть 100% покрытие моделями. Никогда не пишем голый SQL, любые операции с данными - только через AR.
Вопрос: Так в реальной жизни бывает?
А вот такой ещё вопрос, ко всем.
То есть, должно быть 100% покрытие моделями. Никогда не пишем голый SQL, любые операции с данными - только через AR.
Вопрос: Так в реальной жизни бывает?
кеши надо не забывать вовремя сбрасывать, на то они и кешиведь действие ON DUPLICATE, NOW, filed = filed + 1 - это магия происходящая внутри базы и мы теряем контроль над данными. т.к. база уже не соответствует данным в Identity map или кешах.
Это как делать. Если есть список затрагиваемых в запросе сущностей (ручным перечислением, например), то вся инвалидация может сводиться к изменению тегов этих сущностей.сделать инвалидацию кеша на уровне ORM не получится
Получится в частном случае - когда все параметры выборки являются одновременно параметрами кэширования. Например, все, что идет в where, также идет в имя memcached-ключа.если мы разрешаем использование чистого SQL (а запретить его вряд-ли получится)
то сделать инвалидацию кеша на уровне ORM не получится, остается только кеш запросов на уровне соединения с БД

Тут, кстати, становится совершенно неважно, используется plain SQL, билдеры, table gateway, AR или еще что

Например, все, что идет в where, также идет в имя memcached-ключа.
Угу, если бы он еще работал нормально, а не лочил все подрядну так это и получается кеш запросов на уровне соединения с БД
хотя в последних версиях (по крайней мере перконы/марии) его, вроде бы, починили.Нельзякакая польза от такой схемы когда одну и ту же запись можно извлечь по одному параметру в where, а модифицировать по другому

почему нельзя?Нельзя![]()