В нескольких конвейерах Apache Beam, которые я хочу реализовать, мне нужно сделать http-вызовы другой службе в рамках того же проекта ядра приложения.
Обычно мы имеем дело с этим, получая токен доступа и обновляя его каждый раз, когда он истекает (скажем, каждый час).
Однако в Apache Beam я не могу определить класс, который возвращает / обновляет токен доступа и доступен из ParDo.
Конечно, я мог бы получить новый каждый раз, когда вхожу в процесс () в DoFn, но это кажется ужасным с точки зрения производительности.
Есть ли рекомендуемый способ решения этой проблемы? Я думал о, возможно, использовании боковых входов, но я не уверен, что это действительно решает.
(Если это вообще возможно, решение должно работать как для потоковых, так и для пакетных заданий)
В случае, если это уместно (но, наверное, не стоит), я работаю с python sdk.