解決方案構想
本文是解決方案概念。 如果您想要以詳細資訊擴充內容,例如潛在的使用案例、替代服務、實作考慮或定價指引,請提供 GitHub 意見反應讓我們知道。
本文說明無伺服器事件驅動架構,其使用Azure 事件中樞和Azure Functions來擷取和篩選資料庫儲存體的資料流程。
架構
資料流程
- 事件抵達輸入事件中樞。
- 系統會觸發取消批次處理和篩選 Azure 函式以處理事件。 此步驟會先篩選掉不必要的事件,並取消批次處理收到的事件,再將其提交至輸出事件中樞。
- 如果取消批次處理和篩選 Azure 函式無法成功儲存事件,事件就會提交至 Deadletter 事件中樞 1。
- 抵達輸出事件中樞的事件會觸發轉換 Azure 函式。 此 Azure 函式會將事件轉換成 Azure Cosmos DB 實例的訊息。
- 事件會儲存在 Azure Cosmos DB 資料庫中。
- 如果轉換 Azure 函式無法成功儲存事件,事件會儲存至 Deadletter 事件中樞 2。
單元
- 事件中樞會擷取資料流。 事件中樞是針對高輸送量資料流案例所設計的。
- Azure Functions 是無伺服器計算選項。 它會使用事件驅動模型,其中觸發程式會叫用函式) (一段程式代碼。
- Azure Cosmos DB 是一種多模型資料庫服務,可在無伺服器、耗用量型模式中使用。 在此案例中,事件處理函式會使用 適用于 NoSQL 的 Azure Cosmos DB來儲存 JSON 記錄。
實例詳細資料
此解決方案概念描述使用事件中樞和Azure Functions擷取和處理資料流程的無伺服器事件驅動架構變化。 結果會在取消批次處理和篩選之後,寫入資料庫以供儲存和未來檢閱。
若要深入瞭解無伺服器事件處理的基本概念、考慮和方法,請參閱 無伺服器事件處理 參考架構。
潛在使用案例
實作端對端事件串流處理模式的熱門使用案例包括事件中樞串流擷取服務,以使用以高度可調整、事件中樞觸發的函式實作的取消批次處理和轉換邏輯,每秒接收和處理事件。
參與者
本文由 Microsoft 維護。 它原本是由下列參與者所撰寫。
主體作者:
- RajasaAvant |資深軟體發展工程師
若要查看非公用LinkedIn設定檔,請登入 LinkedIn。
下一步
相關資源
- 無伺服器事件處理 是一種參考架構,詳細說明此類型的一般架構,其中包含程式碼範例和重要考慮的討論。
- 監視無伺服器事件處理 提供監視無伺服器事件驅動架構的概觀和指引,如下所示。
- 事件串流處理中的 Azure Kubernetes 描述使用 KEDA 縮放器在 Azure Kubernetes 上執行的無伺服器事件驅動架構變化。
- 事件串流處理中的私人連結案例 是實作類似虛擬網路中具有私人端點之架構的解決方案概念,以增強安全性。