簡體   English   中英

多次執行Azure功能隊列觸發器

[英]Azure Function Queue Trigger Executing Multiple Times

我的存儲隊列觸發了azure函數。 該功能的行為是向另一個存儲隊列中創建大約10,000條附加消息,以供另一個功能(在同一功能應用程序內)執行。 每當執行時,我都會看到一些奇怪的行為,第一個函數似乎要執行多次。 我通過觀察它正在發布的隊列接收到的消息明顯多於預期來觀察到這一點。

我知道該功能應進行防御性編碼(即希望執行多次),但這在每次執行第一個功能時都會一致發生。 我不認為重復執行是由於超時或失敗(根據應用程序見解)造成的。

可能是當10,000條消息排隊時,該功能正在向外擴展,並且某種程度上導致原始消息被執行了多次?

觸發第一個Azure功能執行的原始消息上的鎖定可能即將到期。 這將導致隊列假定處理消息失敗,然后它將使用該消息觸發功能再次執行。 在向下一個隊列發送10,000條消息時,您需要研究更新消息鎖。

另外,由於要發送10,000條消息,因此您可能需要重新設計該消息,以更有效地擴展您嘗試實現的大規模並行處理。 10,000是從單個觸發事件發送的大量消息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM