[英]Azure Durable Functions as Message Queue
我有一個無服務器 function 接收訂單,每天大約 30 個。 這個 function 依賴於第三方 API 來執行一些額外的查找和檢查。 但是,這個外部端點不是 100% 可靠,如果另一個 API 在幾個小時(或更長時間......)內不可用,我需要能夠存儲訂單請求。
我最初的想法是將 function 分成兩部分,第一部分將接收訂單,進行一些初始檢查,例如驗證訂單,然后將請求發布到消息隊列或發布/訂閱系統中。 另一方面,有一個消費者讀取訂單並嘗試執行 API 請求,如果 API 不可用,訂單將被發送回隊列。
然而,有人建議我簡單地使用 Azure 持久 Function 來處理請求,並將當前積壓存儲在 function state 中,使用聚合器模式(特別是因為 API 將在 99.99..% 的時間內工作)。 這將使架構更簡單。
使用一個比另一個有什么優點/缺點,我是否遺漏了任何重要的考慮因素? 如果您有任何見解或其他建議,我將不勝感激。 讓我知道是否需要其他信息。
您可以使用 Durable Task Framework 或 Azure 存儲或服務總線隊列來解決此問題,但在您的事務量下,我認為這會使解決方案過於復雜。
如果您每天要處理約 30 個訂單,請考慮一種更簡單的解決方案:
當您的工作量很大時,Durable Task Framework 非常有用。 但是這個框架有一個不平凡的學習曲線。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.