選擇「應用程式整合」或「工作流程」
雖然 Application Integration 和 Workflows 有些類似的功能,但兩者適用於不同用途,且提供方式也不同。
如果您要整合業務系統或導入業務程序,建議使用 Application Integration。如果您要為應用程式開發、管道或基礎架構自動化服務進行調度,請考慮使用 Workflows。您也可以同時使用這兩者,例如協調更新整合式第三方業務系統的管道。
以下根據用途提供的指引、範例和圖表,可協助您選擇解決方案。
使用 Application Integration
如果您是企業架構師、整合開發人員或業務分析師,需要一種方法來連結、對應、轉換及整合 Salesforce、ServiceNow 或 Cloud SQL 資料庫等業務系統之間的資料:
Application Integration 非常適合整合資料結構不同的應用程式,以及交換資料。這項服務提供內建的轉換函式,可讓您轉換來源應用程式資料,以符合目的地應用程式結構定義。
建議使用 Application Integration 處理即時商務交易,或以小批次處理商務交易。或者,如果您有現有的 Google Cloud 應用程式,且因大量軟體即服務 (SaaS) 應用程式而面臨連線問題。
Application Integration 提供拖曳式視覺化介面,可讓您利用少許程式碼或完全不需要程式碼,即可建立完整的整合流程。您也可以透過連接器呼叫及對各種實體執行作業。
如果您需要連接器,以便整合及對應 Google Cloud 服務 (例如 BigQuery) 與第三方服務 (例如 ServiceNow) 之間的資料:
- 應用程式整合連接器會隱藏應用程式專屬資料結構和通訊協定的複雜度,這個介面提供標準介面,可對應用程式資料執行建立、讀取、更新和刪除作業。
- 舉例來說,您可以使用 Spanner 連線在 Spanner 資料表中插入、讀取、更新及刪除資料列,並在整合中運用產生的輸出內容。您也可以使用 Oracle DB 連接器連線至 Oracle 資料庫執行個體,並執行支援的資料庫作業。
- 請參閱支援的連結器清單。
範例:使用 Application Integration 對應及擷取資料
下圖顯示使用 Application Integration 對應及擷取外部系統資料的範例:
Salesforce 觸發程序已訂閱 Salesforce 商機管道。Salesforce 商機的資料變更會叫用應用程式整合,擷取 Salesforce 商機的狀態。如果狀態為「已結案」,整合服務會擷取商機詳細資料,並使用連接器將資料寫入 Cloud SQL 執行個體。如果資料有變更,但狀態仍為開啟,整合服務會使用連接器將訊息傳送至 Pub/Sub 主題。
使用工作流程
如果您是開發人員、資料工程師或雲端平台團隊,需要協調服務來建構應用程式、自動化處理程序,或實作資料和機器學習管道:
如果您想將服務排序和連結的邏輯與核心商業邏輯分開,工作流程就是理想選擇。工作流程可以在多個系統中執行一連串作業,等待所有作業完成,而且可以由事件觸發。
如果您想減少編寫程式碼,並以您定義的順序執行鬆散耦合的服務,請考慮使用 Workflows:工作流程。這些工作流程可以合併任何以 HTTP 為基礎的 API 服務,讓服務依附元件明確且可觀察端對端。
工作流程由一系列步驟組成,這些步驟使用 Workflows 語法描述,且可採用 YAML 或 JSON 格式編寫。工作流程標準程式庫函式和內建環境變數可讓您輕鬆建構引數及處理回應。連接器可用於與其他Google Cloud 產品互動。
如需連接器,簡化工作流程中呼叫及整合其他 Google Cloud API (例如 Cloud Run functions 或 Firestore) 的程序:
- 工作流程會發布輕量級無伺服器連線器,可用於在工作流程中連線至其他 Google Cloud API,以及將工作流程與這些 Google Cloud 產品整合。這些程式庫會處理要求的格式設定,並提供方法和引數,因此您不必瞭解 Google Cloud API 的詳細資料,即可簡化服務呼叫作業。
- 舉例來說,您可以建立工作流程,使用 Cloud Translation API 連接器以非同步批次模式將檔案翻譯成其他語言,然後將結果儲存至 Cloud Storage 值區。或者,您也可以執行工作流程,依序執行多個 BigQuery 查詢工作。
- 支援的連接器包括應用程式整合連接器,因此您可以同時使用這兩項產品;如需瞭解詳情,請參閱本文的「同時使用 Application Integration 和 Workflows」一節。舉例來說,您可以建立工作流程,觸發並等待整合作業,或任何其他作業,例如更新 Salesforce 執行個體。
- 請參閱支援的連結器清單。
範例:使用 Workflows 進行輕量型服務自動化調度管理
下圖顯示使用 Workflows 協調服務的範例:
檔案上傳至 Cloud Storage 值區時,Cloud Run 函式會觸發 Workflows 執行工作流程:使用 Cloud Natural Language API 辨識文字;使用 Cloud Vision API 和 Cloud Video Intelligence API 辨識圖片和影片;以及儲存標記並寫入 Firestore。
同時使用 Application Integration 和 Workflows
您可以搭配使用 Application Integration 和 Workflows,協調應用程式和服務。Workflows 支援應用程式整合的連接器,因此您可以同時使用這兩項產品。舉例來說,您可以使用應用程式整合功能,從 Workflows 在第三方業務系統中執行動作。或者,您也可以使用 Workflows,透過 Application Integration 進行自訂開發。
範例:使用 Application Integration 和 Workflows 在第三方業務系統中執行動作
在下圖中,使用者透過行動應用程式要求數位內容退款。工作流程會移除內容,並在 Application Integration 中啟動退款程序,使用啟發式方法,可能還需要人工核准。根據 Application Integration 的結果,工作流程會核發退款或還原內容。