Обновление 2021 года
Как отметил ниже Брайан де Алвис, поскольку этот ответ был написан, Cloud Workflows теперь общедоступны и функционально аналогичны Шаговые функции.
Ответ 2019 г.
Насколько мне известно, нет ничего лучше Step Functions, но у меня есть две стратегии для создания таких типов систем микросервисов в Google Cloud.
Стратегия 1. Cloud Run / Cloud Functions с Pub / Sub
Здесь я бы создал микросервисы с помощью Cloud Run или Cloud Functions и подписал эти функции на темы Pub / Sub. Это означает, что когда функция A выполняет и завершает свою работу, она публикует сообщение в определенной теме с пакетом данных, который любая функция, на которую она подписана, получит и выполнит.
Например, вы можете создать две темы с именами FunctionASuccess и FunctionAError и создать две отдельные функции, которые подписываются на одну или другую и обрабатывают успешные и ошибочные варианты использования.
Стратегия 2. Работа Firebase с Firestore / базой данных в реальном времени
Как и выше, я создаю функции Firebase, которые следят за изменениями в Firestore или RTDB.
Итак, Function A выполняет и завершает свою задачу, она сохраняет документ в коллекцию FunctionAResults в Firestore или RTDB. Затем выполняются функции, которые подписаны на изменения в коллекции FunctionAResults, и переходят к следующему шагу.
Они оба работают надежно, поэтому у меня нет предпочтений, но я обычно использую вторую стратегию, если использую другие службы Firebase.
person
Brian Burton
schedule
25.11.2019