Cron Job Microservices

Я использую весеннее облако и имею различные микросервисы для интернет-магазина. Все работает как положено.

Но у меня появилось требование, когда мне нужно выполнить задание cron над записями клиента, получить дату отчета клиента, совпадающую с текущей датой, и рассчитать процентную ставку, подлежащую выплате. Это должно выполняться каждый день.

Я запутался в том, как приспособить эту работу cron к архитектуре MS. Нужно ли иметь другой сервер, имеющий только эту работу cron?

1 ответ

Решение

В зависимости от платформы (например, cf, k8s..), которую вы организуете пакетные задания в SCDF, вы можете написать простое загрузочное приложение на основе кварца, которое может взаимодействовать с конечными точками REST SCDF для планирования определений задач, определенных в SCDF.

Существует несколько онлайн-публикаций по решению Quartz + Boot.

Мы также работаем над интеграцией встроенного планировщика для Cloud Foundry (через планировщик PCF). Когда все будет готово, вы сможете планировать (например, cron-выражения) для задач из панели инструментов SCDF.

Как я понимаю, у вас должен быть один централизованный супервизор заданий, потому что несколько экземпляров могут одновременно выполнять одно и то же задание. Этот супервизор может быть микросервисом, который делегирует выполнение задания другим службам посредством вызова покоя или очереди сообщений и ожидает результата. Это означает, что руководитель работ становится частью инфраструктуры, такой как очередь сообщений или база данных.

Другие вопросы по тегам