簡介

已完成

您身為 Tailwind Traders 的工程師,得知公司打算推出為客戶提供股價資訊的新網站。 最近,實習生針對新應用程式建立了網站原型,而首席架構設計師現在要求您逐步執行並改進該解決方案。 您的目標是更新應用程式,以實作自動更新股票價格資訊,但要確定只有當伺服器上的資料變更時,才會在用戶端和伺服器之間進行通訊。

原型架構

伺服器原型有 2 項功能:

函式名稱 觸發程序類型 描述
getStocks Azure Cosmos DB 伺服器負責從資料庫的股票資料表讀取所有資料,並在用戶端要求資料時,傳回 HTTP 回應中的資料。
setPrice 計時器 變更資料庫資料的功能,透過計時器觸發程序執行。 這會模擬從後端系統接收變更。

原型使用計時器功能模擬股票摘要,每分鐘都會更新一次。 用戶端網站每隔 5 秒從 /api/getStocks API 端點要求所有股票,嘗試顯示近乎即時的資料。 這種用戶端要求效率不彰。 相較於從伺服器提取資料,由伺服器推送任何新的股票資訊效率更高。

要完成的工作

在本單元中,您將:

  • 執行原型:檢視用戶端應用程式,它會定期向伺服器輪詢所有股票
  • 改善應用程式:實作無伺服器 Azure Functions 應用程式,使用 SignalR Service 向連線用戶端廣播變更,實現近乎即時的更新。
  • 更新用戶端 JavaScript Web 應用程式,以連線到 Azure SignalR Service 取得並顯示訊息。