Как заблокировать строки базы данных с помощью pgpool master - slave?

У меня есть система Pgpool с несколькими узлами, работающими в режиме master-slave. У меня также есть некоторые ресурсы с высоким уровнем параллелизма и слишком много откатов.

Я думал о двух решениях:

  • использование SELECT ... FOR UPDATE Запросы на блокировку строк и отправку их только на главный узел (при pgpool выбор для обновления недоступен). На самом деле, мне пришлось бы отправить всю транзакцию в мастер.

  • Используйте redis для распределения блокировок, чтобы заблокировать каждую строку, и используйте обычный SELECT без замков.

Какое решение лучше? Есть ли другие решения для решения этой проблемы?

0 ответов

Другие вопросы по тегам