Я ищу лучшее решение для обработки наших задач cron в сбалансированной нагрузке среде.
В настоящее время:
- PHP-приложение, работающее на 3 CentOS-серверах за балансировщиком нагрузки.
- Задачи, которые необходимо запускать периодически, но только на одной машине за раз.
- Хороший старый cron, настроенный для запуска этих задач на первом сервере.
- Проблемы, если первый сервер не работает по какой-либо причине.
Поиск:
- Что-то более надежное и децентрализованное.
- Загрузите балансировку задач, чтобы несколько задач запускались только один раз, но на случайных/разных серверах для распространения нагрузки.
- Предотвращение выполнения задач при первом отключении сервера.
- Возможность управлять задачами и просматривать сводные отчеты в идеале с помощью веб-интерфейса.
- Уведомления, если что-то пойдет не так.
Решение не обязательно должно быть реализовано на PHP, но было бы неплохо, так как это позволило бы нам легко настроить его, если это необходимо.
Я нашел два проекта, которые выглядят обещаниями. GNUBatch и Планировщик заданий. Скорее всего, дальнейшие испытания обоих, но мне интересно, есть ли у кого-то лучшее решение для вышеперечисленного.
Спасибо.