一個資料收集應用程式使用 API Gateway、Lambda 和 S3。使用者上傳檔案後,必須等待長時間的驗證程序執行完畢;他們必須重新整理儀表板才能看到結果。有些使用者上傳許多大型檔案並重複重新整理。開發人員必須修改應用程式,讓儀表板能即時接收檔案的驗證結果,而無需重新載入整個頁面。哪種解決方案在操作上最有效率?
選擇一個答案
點擊一個選項來檢查您的答案。
正確答案: 在用戶端使用 API Gateway WebSocket API。將上傳的檔案與 WebSocket 連線 ID 關聯,並在處理完成時將驗證狀態推送到該連線 ID 以更新 UI。.
為什麼這是答案
正確答案是使用 API Gateway WebSocket API。WebSocket 提供了持久的雙向通訊通道,允許伺服器在驗證完成時主動將結果推送到客戶端,無需客戶端重新整理。將上傳的檔案與 WebSocket 連線 ID 關聯,確保結果能傳送給正確的使用者。
啟動 EC2 實例來執行 WebSocket 伺服器會增加營運負擔和成本,因為需要管理伺服器,而 API Gateway WebSocket API 是無伺服器且託管的。透過 SNS 發送電子郵件通知雖然能通知使用者,但無法提供即時的儀表板更新,使用者仍需手動查看郵件並重新整理儀表板。使用 DynamoDB Streams 搭配 SNS 推送通知到瀏覽器雖然可行,但其複雜性高於直接使用 API Gateway WebSocket API,且 SNS 主要用於發送通知,而非建立持久的雙向通訊。