Изменения документа Транзакции и блокировки
Редактировал(а) Alexandr Fokin 2024/06/01 13:29
<
>
отредактировано Alexandr Fokin
на 2022/11/13 18:44
на 2022/11/13 18:44
отредактировано Alexandr Fokin
на 2022/11/13 18:41
на 2022/11/13 18:41
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -16,8 +16,19 @@ 16 16 17 17 ---- 18 18 19 -** [[Блокировки>>doc:Архитектураи модели.Блокировки.WebHome]]**19 +**Понятие оптимистичной и пессимистичной блокировок.** 20 20 21 +Оптимистичная: 22 +Берем элемент (не блокируя) (фиксируем version/timestamp) 23 +Производим обработку. 24 +Проверяем, что version/timestamp не изменился. (иначе ошибка/повторная обработка/игнорирования, что исходные данные изменились с момента начала обработки) 25 +Сохраняем элемент. 26 + 27 +Пессимистичная: 28 +Берем элемент. (блокируя его некоторым образом) (в момент блокировки другой обработчик не может получить доступ и ожидает) 29 +Производим обработку. 30 +Сохраняем элемент. 31 + 21 21 ---- 22 22 23 23 Руководство по блокировке и управлению версиями строк транзакций ... ... @@ -41,8 +41,13 @@ 41 41 Транзакции 42 42 https://www.flenov.info/books/read/transact-sql/32 43 43 44 ----- 45 45 56 +Optimistic vs. Pessimistic Locking 57 +https://medium.com/@recepinancc/til-9-optimistic-vs-pessimistic-locking-79a349b76dc8 58 + 59 +Optimistic locking and automatic retry 60 +https://enterprisecraftsmanship.com/posts/optimistic-locking-automatic-retry/ 61 + 46 46 DotNetRu | Александр Шелёмин «Concurrency в базах данных» 47 47 https://www.youtube.com/watch?v=a6YzdDFzDl8 48 48