У меня есть группа из нескольких рабочих хостов, которые опрашивают следующие задачи моего SWF:
- Действие 1. Выполните некоторую бизнес-логику для создания большого файла.
- Действие 2. Подождите некоторое время (одобрение человека, таймер и т. Д.)
- Действие 3: Передайте файл, используя какой-либо протокол (регулируемый входными параметрами SWF).
- Действие 4: Очистите созданный локально файл.
Файл, созданный на шаге 1, необходимо снова использовать на шаге 3, а затем в конце рабочего процесса удалить.
Система будет работать нормально, если для всех задач будет опрашиваться только 1 хост. Однако, когда у меня несколько рабочих, я не могу гарантировать, что задача-1 и задача-3 окажутся на одном и том же хосте.
Я бы не хотел делать следующее:
- Загрузка файла в центральный репозиторий (скажем, S3) на шаге 1 и загрузка его на шаге 3; или
- Наличие единого действия для задачи-1 и задачи-3.
У меня следующие вопросы:
- Можно ли контролировать, чтобы последующие действия выполнялись на одном и том же хосте, а не на любом случайном хосте в моем парке?
- Каковы конкретные рекомендации / лучшие практики по повторному использованию ресурсов, созданных в различных действиях в рабочем процессе?