digital-garden/_inbox/Deadlock.md

1.1 KiB
Raw Blame History

aliases tags date zero-link parents linked
зрелость/🌱
2024-06-20
00 Разработка

Советы:

  • Делать транзакции короче.
  • Выполнить повторно откатившуюся транзакцию

Что реально поможет:

  • Разделить потоки чтения и записи: CQRS
  • Использовать материализованные view.
  • Изменить порядок блокировок ресурсов. Если в разных операциях блокируется определенный набор ресурсов, то блокироваться первым должен всегда один и тот же ресурс
  • Пересмотреть Уровни изоляций транзакций БД
  • Сразу использовать Exclusive lock. Но это сильно может сказаться на производительности.