Механизмы оркестровки и фреймворки?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Механизмы оркестровки и фреймворки?

Сообщение Anonymous »

Мне нужна оркестрация фреймворк/движок/инструментарий, с помощью которого можно заменить/обновить существующее программное обеспечение, главным образом из-за ограничений масштабируемости. Под оркестровкой я подразумеваю асинхронное и распределенное выполнение общих задач и рабочих процессов.

Более конкретно, требования примерно такие:
  • Обертка и выполнение общих задач на Java, если зависит от языка.
  • API для запуска задач и рабочих процессов по требованию.
  • Планирование тоже было бы неплохо.
  • Поддержка распределенной архитектуры и масштабируемости (в основном для большого количества небольших задач)
  • Постоянство и отказоустойчивость
  • Расширенные возможности настройки рабочего процесса ( делайте это, затем эти 3 задачи параллельно, затем это, имея приоритеты, зависимости...)
  • Интерфейс мониторинга и администрирования (или, по крайней мере, API)
Существующая система представляет собой старомодный монолитный сервис (на Java), который имеет большую часть этого, включая саму логику выполнения, которая должен оставаться как можно более нетронутым.

Есть ли у кого-нибудь опыт решения подобной проблемы? Мне кажется, это должно быть довольно распространено, было бы странно, если бы мне пришлось полностью реализовать это самостоятельно. Я нашел здесь несколько вопросов (например, этот и этот), обсуждающих теорию систем оркестровки и хореографии, но не реальные примеры инструментов, реализующих ее. Кроме того, я думаю, что речь идет не совсем о микросервисах — задачи не являются длительными и тяжелыми, их просто много, они выполняются в фоновом режиме и выполняют короткие задания многих типов. Я бы не стал создавать сервис для каждого типа работы.

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

Наиболее близким мне кажется движок Netflix Conductor, который отвечает большинству требований, запуская сервер оркестрации, который управляет задачами, реализованными в сервлеты (или любые веб-сервисы на любом языке — плюс). Однако похоже, что он создан в основном для организации тяжелых задач в рабочем процессе, а не для выполнения огромного количества мелких задач, что заставляет меня задаться вопросом, каковы будут накладные расходы, например, при вызове множества мелких задач в сервлетах.

Есть ли у кого-нибудь опыт или какие-либо отзывы о Проводнике или других инструментах, которые я мог бы использовать? Или даже весь мой подход к проблеме?

РЕДАКТИРОВАТЬ: Я понимаю, что это своего рода «нужный совет по исследованию», поэтому давайте сформулируем его в трех вопросах:
  • Прав ли я, что ищу решение оркестрации для вышеуказанных требований?
  • Есть ли у кого-нибудь опыт работы с Netflix? Дирижер? Есть отзывы о нем?
  • Есть ли у него хорошие конкуренты?


Подробнее здесь: https://stackoverflow.com/questions/499 ... frameworks
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»