適用于行動裝置和 web 的社交應用程式與驗證

App Service - Mobile Apps
函式
流量管理員
Visual Studio
Xamarin

解決方案構想

如果您想要瞭解如何使用詳細資訊來擴充本文,例如可能的使用案例、替代服務、實行考慮或定價指引,請讓我們知道 GitHub 的意見反應!

此行動用戶端應用程式透過隨附的 web 應用程式提供社交影像共用。 應用程式後端服務會使用 Azure 函式進行背景影像處理,並可透過通知中樞通知使用者進度。 非影像資料會儲存在 Cosmos DB 中。 web 應用程式會透過 Azure 流量管理員來存取後端服務資料和映射。

請參閱下列服務,這些服務將在此解決方案架構中精選:

潛在使用案例

行動用戶端應用程式可在離線模式中運作,即使您沒有網路連線,也可讓您查看和上傳影像。

架構

架構圖表下載此架構的SVG

資料流程

  1. 使用 Visual Studio 和 Xamarin 來建立應用程式。
  2. 將 Azure App Service Mobile Apps 後端服務新增至應用程式解決方案。
  3. 透過社交識別提供者來執行驗證。
  4. 將非影像資料儲存在 Cosmos DB 中,並在 Azure Cache for Redis 中加以快取。
  5. 將上傳的影像儲存在 Azure Blob 儲存體中。
  6. 佇列有關新上傳影像的訊息。
  7. 使用 Azure Functions 將訊息清除佇列,並處理從 blob 儲存體取出的影像。
  8. 透過通知中樞將推播通知傳送給使用者。
  9. 透過 Visual Studio app Center 建立並測試應用程式,並將其發佈。
  10. 控制使用者流量散發到不同資料中心的服務端點。
  11. 使用 Application Insights 來監視 app service。

單元

  • 使用 c # 在Visual Studio 2017 或Visual Studio for Mac 中建立 web 前端、mobile apps 和後端服務。
  • Xamarin:使用 c # 和 Azure sdk 建立適用于 IOS 和 Android 的行動應用程式。
  • Visual Studio app center: app center 會藉由從 BitBucket、GitHub 和 Visual Studio Team Services 提取程式碼,來啟用持續整合和部署工作流程。
  • App Service web 應用程式可以裝載客戶面向的 web 應用程式,以及 web 和行動用戶端所使用的服務。
  • 使用 Azure Functions 進行無伺服器背景處理。 例如,當新的 blob 新增至容器時,其中一個 Azure 函式可以自動調整其大小,而另一個函式會接聽佇列上的訊息,以便刪除多個背景影像。
  • Application Insights:使用 Application Insights 來偵測問題、診斷損毀,以及追蹤 web 應用程式中的使用量。 在整個開發生命週期中做出明智的決策。
  • Azure Cosmos DB是完全受控的 NoSQL 檔資料庫服務。 它提供無架構資料的查詢與交易處理、可預測且可靠的效能,以及快速的開發。
  • Azure 佇列儲存體 可用於 App Service 後端和 Azure Functions 之間的持久訊息。
  • Blob 儲存體: Azure 儲存體裝載影像檔案,以利用較低成本的更高擴充性。 Web 應用程式和 Azure 函數之間的通訊通常會使用 blob 觸發程式和 Azure 佇列儲存體來執行。
  • Azure 通知中樞 用於可調整的跨平臺推播通知。
  • Azure流量管理員會控制不同資料中心之服務端點的使用者流量分佈,以提供回應迅速且可用的應用程式。

下一步