Недавно был озадачен проблемой мониторинга нескольких десятков серверов (ну наверно редко кто не сталкивался с такой задачей). Проблему можно описать несколькими правилами:
- Нужно периодически пинговать сервер
- Иногда выполнять какое-либо действие с сервером (например, исполнение команды через ssh), которое засабмитил пользователь
- Действия с серверами могут нескольких типов, у каждого действия свой приоритет
- Таски (из п.1-3) нельзя выполнять одновременно для каждого сервера
- Таски могут завершаться с неудачей, например по причине отсутствия связи с сервером, нужно ждать пока связь восстановится и пытатся выполнить запланированную задачу