使用 Azure Cosmos DB 的無伺服器應用程式

Azure Cosmos DB
Azure Functions

解決方案構想

本文是解決方案概念。 如果您想要使用詳細資訊來擴充內容,例如潛在的使用案例、替代服務、實作考慮或定價指引,請提供 GitHub 意見反應讓我們知道。

您可以使用 Azure Functions 和 Azure Cosmos DB 來建置全域散發且可調整的無伺服器應用程式。

架構

Architecture diagram that shows the functions that are triggered by an online order and a database change feed.

下載此架構的 Visio 檔案

資料流程

  • 客戶在電子商務網站中下訂單。

  • 順序會觸發 Functions 的實例。 函式會處理客戶的結帳,並在 Azure Cosmos DB 中儲存訂單的相關信息。

  • 資料庫插入作業會觸發 Azure Cosmos DB 變更摘要事件。

  • 訂閱變更摘要事件的系統會收到通知。

  • 變更摘要通知會觸發函式:

    • 函式會將稅金套用至訂單。
    • 函式會處理訂單的付款。
    • 函式會履行訂單。

元件

  • Functions 是事件驅動的無伺服器計算平臺。 透過 Functions,您可以使用觸發程式和系結大規模整合服務。
  • Azure Cosmos DB 是全域散發的多模型資料庫。 透過 Azure Cosmos DB,您的解決方案可以在任意數目的地理區域彈性調整輸送量和記憶體。

案例詳細資料

微服務提供許多優點:

  • 它們提供可高度擴充的解決方案。
  • 您可以獨立部署每個服務。
  • 當您將功能限制為個別容器時,錯誤隔離很簡單。
  • 它們非常適合在DevOps環境中。
  • 它們藉由加快軟體開發生命週期來縮短上市時間。

實作微服務的有效方式是使用無伺服器技術。 此解決方案使用 Functions,這是提供無伺服器計算體驗的 Azure 供應專案。 解決方案會使用 Azure Cosmos DB 來儲存數據。 Azure Cosmos DB 提供與 Functions 整合的變更摘要。

潛在的使用案例

此解決方案適用於許多領域:

  • 電子商務
  • Retail
  • 庫存管理

下一步

請參閱下列架構,包括 Functions 和 Azure Cosmos DB:

請參閱下列功能函式的架構:

請參閱下列功能 Azure Cosmos DB 的架構: