Мне интересно, есть ли у кого-нибудь опыт создания планировщика заданий Laravel, не накладываясь на несколько серверов.Планировщик заданий Laravel на нескольких серверах без перекрытия
Чтобы выразить это в контексте: У меня есть 3 сервера API за балансировщиком нагрузки. Я знаю, что планировщик задач допускает флаг withoutOverlap на одном сервере, но как я могу использовать тот же самый руководитель на всех моих серверах? Я хочу, чтобы только 1 сервер выполнял запланированные задачи, а остальные 2 сервера не запускали их.
Насколько я могу сказать, мои варианты:
Удалить кронтаб из 2 серверов. У меня мои серверы автоматизированы и скорее не удалят работу crontab с любого из серверов, потому что это усложнит мои автоматические сборки.
Напишите пакет, который использует БД, чтобы ограничить задачи только первым запущенным сервером. Я мог бы это сделать, но мне интересно, если это уже сделано (ничего не найдено в google)
Любой совет?
Сделайте то, что проще. –
@ Daniel Что ты наделал? Я в такой же ситуации. – hedi
@hedi В итоге я просто установил задание cron для работы на одном сервере. Не идеальный, но он работает – Daniel