Можно ли использовать Spring XD в качестве платформы для комплексных пакетных рабочих процессов Spring?

Spring XD предоставляет платформу для запуска пакетных заданий. Охватывает ли это комплексные рабочие процессы для всех вариантов использования пакетных заданий? Или он предназначен для использования в контексте вариантов использования Spring XD.

Например, кто-то, кто хочет использовать только spring-batch, не обязательно все функции приема данных/аналитики в реальном времени, получит ли он пользу от настройки Spring XD DIRT только для выполнения пакетных рабочих процессов? В этом случае существуют ли какие-либо ограничения, не позволяющие использовать все пакетные рабочие процессы, поддерживаемые spring-batch?


person SathiyaS    schedule 11.08.2014    source источник


Ответы (1)


Короче говоря, да, его можно использовать в качестве комплексной пакетной платформы. В настоящее время Spring XD предоставляет ряд привлекательных функций, которые появятся в будущем. Возможности Spring XD для пакетных решений:

  • Оркестровка заданий. Spring Batch явно избегает проблемы согласования заданий, поэтому разработчик может использовать любой инструмент, который ему нужен. Spring XD обеспечивает оркестровку в распределенной среде посредством планирования заданий, выполнения специальных заданий и выполнения заданий в результате некоторой логики (например, опрос каталога для файла).
  • Абстракция Spring Batch и Spring Integration. Spring Batch и Spring Integration обычно используются в решениях для более сложных сценариев. Например, если вам нужно отправить файл по FTP на сервер, а затем запустить пакетное задание, как только оно будет там, вы должны использовать Spring Integration для части FTP и запустить задание с помощью Spring Batch, обрабатывающего обработку задания. Spring XD обеспечивает элегантную абстракцию этих компонентов, что позволяет легко собирать их в более надежные решения.
  • Упрощение удаленного разбиения. Spring XD предоставляет средства для упрощения подключения аспектов связи удаленного разбиения в Spring Batch.
  • Взаимодействие заданий через пользовательский интерфейс, оболочку или REST. Spring XD предоставляет ряд показателей и функций, которые можно использовать через их веб-интерфейс, интерактивную оболочку или конечные точки на основе REST.

Основным ограничением Spring XD 1.0 для пакетной обработки является невозможность выполнения вложенных заданий (с использованием JobStep). Я полагаю, что это будет частью Spring XD 1.1 (https://jira.spring.io/browse/XD-1972).

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

person Michael Minella    schedule 12.08.2014