Изучая эту тему, я столкнулся с несколькими концепциями, которые, похоже, решают одну и ту же проблему с разных сторон:
- Уровни изоляции (обычные четыре: чтение без фиксации, чтение с фиксацией, повторяемое чтение, сериализуемость)
- Стратегии управления параллелизмом, такие как оптимистическое и пессимистическое управление параллелизмом
- Механизмы блокировки (общие блокировки, эксклюзивные блокировки и т. д.)
- MVCC (управление многоверсионным параллелизмом)
- На основе временных меток протоколы
- Некоторые технологии, такие как JPA, поддерживают как оптимистические, так и пессимистические стратегии блокировки. Эквивалентны ли они глобальным оптимистическим и пессимистическим стратегиям, упомянутым выше?
Может ли кто-нибудь помочь мне построить более четкую мысленную модель того, как эти части соединяются? Любое объяснение будет с благодарностью. Заранее спасибо и извините, если это несколько простой вопрос.
Подробнее здесь: https://stackoverflow.com/questions/798 ... ency-strat
Мобильная версия