Код: Выделить всё
Workflow: Task(A) -> Task(B) -> Task(C) -> Task(D) -> Task(E)
------- -------
Единственная трудность, с которой я сталкиваюсь, заключается в том, что рабочий процесс может блокироваться на 3-й и 4-й задачах
Действительно,
- вызывает/использует Service(C), который может быть на мгновение отключен
Код: Выделить всё
Task(C) - вызывает/использует Service(D), который также может быть на мгновение отключен
Код: Выделить всё
Task(D)
- когда служба не работает (или Service(D)) текущий рабочий процесс должен прерваться
Код: Выделить всё
Service(C) - при получении нового ввода, когда служба не работает (или Service(D)), все задачи рабочего процесса должны выполняться до тех пор, пока не будет заблокирована задача
Код: Выделить всё
Service(C) - , когда снова отключится служба (и задача разблокируется), все прерванные выполнения должны быть немедленно перезапущены.
Я обнаружил, что начиная с Java 8 ( очень старый: извините, что не в курсе) Java предоставляет CompletableFuture, который кажется очень мощным... однако мне он пока не очень нравится
- Можно ли добиться желаемого поведения с помощью JAVA CompletableFuture?
- или мне следует использовать другую платформу? Если да, то какой?
- Каким бы ни был ответ, я был бы очень признателен за простые примеры.
Подробнее здесь: https://stackoverflow.com/questions/786 ... blefutures