Есть ли механизм, чтобы немедленно сигнализировать рабочему процессу об отказе / тайм-ауте асинхронного действия
Мы хотим реализовать вариант использования с использованием рабочего процесса каденции, в котором мы хотим запустить длительное асинхронное действие, а затем продолжить выполнение других действий. Если тем временем по какой-либо причине эта длительная операция завершилась неудачно / истекло время, мы хотели бы остановить выполнение рабочего процесса и инициировать действия по компенсации.
1 ответ
Когда действие вызывается асинхронно, оно возвращает свой результат как Future (в Go SDK) или Promise (в Java SDK). Затем можно продолжить работу, не дожидаясь результата. Результат можно использовать для отмены другой части кода рабочего процесса при сбое действия или истечении времени ожидания. При отмене код может выполнять любую необходимую логику очистки. Конкретная реализация зависит от того, какой SDK вы используете.