одновременное чтение с обновлением данных весной - PullRequest
0 голосов
/ 30 октября 2018

У меня есть два экземпляра одного и того же приложения, которое использует одну базу данных (оракул). Приложения на основе Spring Data (CrudRepository).

Проблема: каждому экземпляру приложения необходимо прочитать строки из таблицы и заблокировать их, чтобы предотвратить чтение (и обработку) из другого экземпляра. Я реализовал это методом CRUD repo read list методом. а затем для каждого элемента в списке я устанавливаю свойство busy и вызываю метод CRUD save для каждого. Но это не совсем безопасно для параллелизма: второй экземпляр может прочитать тот же список, прежде чем первый экземпляр пометит каждый элемент как занят и сохранит.

У меня есть идея обновить каждую строку с некоторым UID в начале, а затем получить список с этим UID. но это как шип

Как я могу решить это? Сделки? Замки? Thx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...