您為費用核准實作了一個 Durable Functions 工作流程。協調器必須等待經理核准,最長 48 小時,然後才能繼續。如果在 48 小時內未收到核准,則必須自動拒絕並發送通知。該解決方案必須能夠承受重新啟動和重播。您應該在協調器中實作什麼?
選擇一個答案
點擊一個選項來檢查您的答案。
正確答案: 等待外部事件(例如「Approved」),並建立一個 48 小時的耐久計時器,await Task.WhenAny(eventTask, timerTask),如果核准先到,則取消計時器,否則繼續拒絕。.
為什麼這是答案
正確答案是等待外部事件並使用耐久計時器,因為 Durable Functions 協調器支援 Task.WhenAny 和耐久計時器,這些功能專為處理長時間執行的工作流程和外部互動而設計,同時能承受重新啟動和重播。當核准事件或計時器先完成時,Task.WhenAny 會讓協調器繼續執行,確保在 48 小時內收到核准則處理核准,否則自動拒絕。 讓活動函數輪詢資料庫並使用 Thread.Sleep 是不正確的,因為這會浪費資源,且 Thread.Sleep 不具耐久性,無法承受協調器重新啟動。直接在協調器中使用 Thread.Sleep 也是不正確的,因為這會阻塞協調器執行緒,且不具耐久性。使用具有不可見延遲的佇列訊息來模擬逾時過於複雜且不符合 Durable Functions 的最佳實踐,Durable Functions 提供了內建的計時器功能來處理此類場景。
通過考試 — 無需無休止地尋找答案
集中一處獲取此考試的所有核實題目和解釋,節省數小時的準備時間。1,000 多種認證 · 20 多種語言 · 免費開始。
更快通過您的考試 → 無需信用卡