![](/img/trans.png)
[英]How to trigger controller action by Azure storage queue like in Azure functions?
[英]Azure Function Trigger for List<POCO> Storage Queue
我們訂閱了事件網格,其端點類型為存儲隊列(例如 xyz-queue)。 我們還有一個 Azure Function 這是一個隊列(xyz-queue)觸發器。 xyz-queue 存儲隊列中的每條消息都是 EventGridEvent object。 我有 Azure Function 觸發器如下所示:
public static void Run([QueueTrigger(xyz-queue, Connection = "connnection")] EventGridEvent ege)
因為,將有 1000 條具有相同 POCO object 的消息(在本例中為 EventGridEvent),有沒有一種方法可以讀取多條消息,一起處理它們並確保我們讀取的消息不超過 5 條,這樣 function 就不會采取處理時間長。
Functions 運行時同時檢索並並行處理的隊列消息的數量。 當正在處理的數量下降到newBatchThreshold
時,運行時會獲取另一個批次並開始處理這些消息。 因此,每個 function 正在處理的最大並發消息數是batchSize
加上newBatchThreshold
。 此限制分別適用於每個隊列觸發的 function。
{
"version": "2.0",
"extensions": {
"queues": {
"maxPollingInterval": "00:00:02",
"visibilityTimeout" : "00:00:30",
"batchSize": 5,
"maxDequeueCount": 5,
"newBatchThreshold": 2
}
}
}
更多細節,你可以參考這篇文章。
此外,如果您想使用 poco 將 output 隊列消息多個,您可以使用ICollector
和IAsyncCollector
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.