История изменений
Исправление
Legioner,
(текущая версия)
:
Не понял. Предлагается работать с БД всегда через один коннект к ней?
Предполагается работать с БД через интерфейс ORM. А коннектов обычно по числу ядер + 2, больше не имеет смысла в нормальной ситуации.
Ведь транзакции не располагают информацией о действиях друг друга. Т.е. без построения специальной системы оповещений (нарушающих логику транзакций) не удастся узнать, какой кеш уже протух, а какой ещё нет.
Не очень понял. В кеше первого уровня хранятся данные (таблица, id) -> (столбцы). Если мы делаем любые изменения, то из кеша удаляются все затронутые id. В рамках текущей транзакции используется кеш второго уровня, т.е. если мы что-то меняем в транзакции, то до коммита оно на кеш первого уровня не влияет.
Исходная версия
Legioner,
:
Не понял. Предлагается работать с БД всегда через один коннект к ней?
Предполагается работать с БД через интерфейс ORM. А коннектов обычно по числу ядер + 2, больше не имеет смысла в нормальной ситуации.
Ведь транзакции не располагают информацией о действиях друг друга. Т.е. без построения специальной системы оповещений (нарушающих логику транзакций) не удастся узнать, какой кеш уже протух, а какой ещё нет.
Не очень понял. В кеше первого хранятся данные (таблица, id) -> (столбцы). Если мы делаем любые изменения, то из кеша удаляются все затронутые id. В рамках текущей транзакции используется кеш второго уровня, т.е. если мы что-то меняем в транзакции, то до коммита оно на кеш первого уровня не влияет.