Я хотел создать приложение, которое прослушивает очередь и выполняет серию шагов.По существу, приложение должно прослушивать Queue1 и:
- получить некоторые данные из ServiceA [небольшой объем данных]
- получить некоторые данные из ServiceB [небольшой объем данных]
- обновить некоторую информацию в Service C [На основе данных]
- Создать количество сообщений [на основе данных] в очереди 2..
Из-за потоковой природы этого приложения я искал систему для выполнения заданий в Spring.,Однако все шаги разработаны так, чтобы быть идемпотентными, а данные, передаваемые между шагами, малы, поэтому я не хотел создавать базу данных с этим приложением.
Я начал изучать Spring Batch или Spring Task для этого.Spring batch предоставляет действительно хорошие конструкции, такие как Tasklet и Steps, но есть множество комментариев, рекомендующих надежно подключить Spring Batch к базе данных и узнать, как она предназначена для управления огромными объемами данных (здесь мне не нужна надежность, поскольку очередь и идемпотентная природа обеспечиваюттот.).Хотя я могу передавать данные с помощью контекста выполнения, существуют рекомендации против него.
Вопрос:
- Существуют ли более простые стартеры в экосистеме Spring Boot, которые предоставляют рабочие процессы / интерфейс, похожий на работу, который я должен использовать?
- Это допустимый вариант использования для Spring Batch или это из-за неправильного проектирования / неправильного использования шагов?
Большое спасибо за помощь
Ayushman
PS: Iможет предоставить точную информацию о работе, но не хотел связывать вопрос.