У меня есть таблица mysql, в которой я храню задания для обработки. в основном это текстовые поля необработанных данных, обработка каждого из которых займет около минуты.
У меня есть 2 сервера, которые извлекают данные из этой таблицы, обрабатывают их, а затем удаляют.
Для управления распределением заданий между двумя серверами я в настоящее время использую amazon SQS. Я храню все идентификаторы строк, которые необходимо обработать, в SQS, рабочие серверы опрашивают SQS, чтобы получить новые строки для работы.
Система в настоящее время работает, но SQS добавляет уровень сложности и затрат, которые, как мне кажется, излишни для достижения того, что я делаю.
Я пытаюсь реализовать то же самое без SQS, и мне было интересно, существует ли какой-либо способ чтения блокировки строки, чтобы, если один работник работал над одной строкой, никакой другой работник не мог выбрать эту строку. Или есть ли лучший способ сделать это.