Является ли Postgres блокировка на уровне таблицы / строки способом решения проблемы параллелизма? - PullRequest
0 голосов
/ 05 октября 2018

У меня есть облачная система управления пользователями (база данных postgres), где пользователь может управлять своими командами.В настоящее время я пытаюсь решить проблему параллелизма в нашей системе.

Например, клиент связан с учетной записью и определенной подпиской, теперь этот клиент пытается управлять своей командой.В таблицах участвуют аккаунт, подписка, пользователь и команда.Предположим, что администратор группы пытается пригласить в систему 12 пользователей (разделенных на 4 одновременных пакета по 3 пользователя в каждом), хотя это разрешено только для 10. Во время этого действия микросервис проверяет, что разрешено ( выберите api1), сколько пользователей уже присутствует ( выберите api2 ) и соответственно вставляет строки в таблицу команды ( insert api3 ).

Это хорошоИдея решить эту проблему с помощью EXPLICIT блокировок уровня таблицы / строки или я подойду к ней с помощью блокировок кода / уровня операции?

...