何時該使用 Azure Logic Apps

已完成

我們會在此說明如何決定 Azure Logic Apps 是否為工作流程的適當選擇。 讓我們從列出一些準則開始,指出 Azure Logic Apps 是否符合您的效能和功能目標。

決策準則

Azure Logic Apps 有助您協調通過不同系統的資料流程。 如果案例包含即時需求、複雜的商務規則,或使用非標準服務,則不建議選擇 Azure Logic Apps。 以下提供上述每個涉及因素的部分討論內容。

係數 描述
整合 考慮 Azure Logic Apps 時的關鍵問題是:「我需要整合服務嗎?」當您需要讓多種應用程式和系統一起運作時,Azure Logic Apps 可發揮極佳效益。 因為這就是設計它們的目的。 如果您要建置的應用程式不需要外部連線,那 Azure Logic Apps 可能就不是最佳選擇。
效能 下一個考量為效能。 Azure Logic Apps 執行引擎會自動調整您應用程式的規模。 Azure Logic Apps 能夠並行處理大型資料集,實現高輸送量。 但是,它們不保證能達到超快速啟動或在執行時間強制實施即時限制。 如果您需要低次秒回應時間,那麼 Azure Logic Apps 可能不是最佳選擇。
條件 Azure Logic Apps 提供一些控制建構 (例如布林運算式、Switch 陳述式和迴圈),讓您的應用程式可以根據資料做出決定。 您可以在邏輯應用程式工作流程中建立高度複雜且深度巢狀的條件。 但有兩個原因可能會讓您不願意這樣做。 第一個是,在程式碼中撰寫條件式邏輯通常會比使用工作流程設計工具容易許多。 第二個是,內嵌的商務規則並不容易與您其他的應用程式共用。 有些人喜歡直接在自己的邏輯應用程式工作流程中包含複雜商務規則。 其他人則認為比較簡單的方式是撰寫像 Azure 函式這樣的物件來封裝條件式邏輯,然後從所有其他應用程式叫用該函式。
連接器 最後一個考量為您需要存取的所有服務是否都已預先建置連接器。 如果是,那表示您已經準備好了。 如果不是,就需要建立自訂連接器。 如果服務具備現有的 REST 或 SOAP API,您可以在幾小時內建立好自訂連接器,不需要撰寫任何程式碼。 如果沒有,就需要先建立 API,再建立連接器。

套用準則

當您將多個服務與一些附加的控制邏輯整合時,Azure Logic Apps 可發揮最佳效益。 這個決定通常就是一個判斷。 我們可以思考一下如何將這些準則套用至範例程序。

我們虛構的製鞋公司需要監視社交媒體、將舊影片移動到封存儲存體,並在線上銷售鞋子。 我們的目標是要決定這些工作是否適合交給 Logic Apps 執行。 為做出決定,我們應使用自己開發的下列四個準則分析每項工作:整合、效能、條件和連接器。 下表摘要列出結果。

整合 效能 條件 連接器 要使用 Logic Apps 嗎?
社交媒體監視器 整合多個服務 不需要近乎即時的低延遲 一個簡單條件 內建連接器可供所有需要的系統使用 Yes
影片封存公用程式 只需要存取雲端儲存體這一項服務 不需要近乎即時的低延遲 兩個簡單條件 內建連接器可供所有需要的系統使用 Yes
直接在線上銷售 整合多個服務 不需要近乎即時的低延遲 多個複雜的條件 需要多個自訂連接器 可能

這項分析中需考量幾個有趣的事項。

  • 影片封存工作是非常適用 Logic Apps 執行的工作,即便它不會整合多個系統。 Azure Logic Apps 具備內建計時器觸發程序和 Azure Blob 連接器,非常適合實作此程序。

  • 線上銷售程序可能會包含複雜的商務邏輯。 例如,我們可能會依據購買金額制定不同的核准程序,或依據出貨目的地採用不同的貨運公司。 Azure Logic Apps 可輕鬆地處理這些狀況。 由我們決定是否要在應用程式中內嵌這些商務規則。

  • 線上銷售程序可能會混合使用內建和自訂連接器。 我們可以將內建連接器用於電子郵件通知和資料庫存取作業,但可能必須使用自訂連接器與我們的付款處理服務通訊。

  • 對於所有工作,Azure Logic Apps 都會有良好效能。 其中一部分的工作可能會處理大量資料,但 Azure Logic Apps 可自動調整規模以處理高輸送量或尖峰需求。 這些工作都不需要低延遲的回應時間。 只有在受到需達到近乎即時的限制時,上述情況才會變成問題。

Azure Logic Apps 可用於執行以上所有工作。 線上銷售程序是我們會想要權衡所有選項的唯一事項。 如果我們有資源可建置所需的自訂連接器,Azure Logic Apps 就會是很好的選擇。

指導方針摘要

以下的流程圖摘要說明在考量是否使用 Azure Logic Apps 時,應該要問的關鍵問題。

Flowchart of the key questions to ask when evaluating Azure Logic Apps for your work.

此流程圖有助您決定 Azure Logic Apps 是否適用於您的工作。 此流程圖摘要說明在評估 Azure Logic Apps 是否適用於您的工作時,應該要問的關鍵問題。 第一個問題是,您的專案是否涉及整合多個系統? 第二個是,您是否需要低延遲? 第三個是,您的程序是否包含複雜邏輯? 第四個是,您需要存取的所有系統是否都有連接器。