2016-06-21 33 views
0

我正在學習azure webjob和隊列,在我工作的公司,每天晚上,我們計算出700萬條記錄。計算非常簡單,但數量相當大(因爲有大約700萬條記錄在db中)。使用azure webjob和隊列時是否可以繞過32個限制?

隨着公司正在轉向Azure,我想知道是否可以使用天藍色的隊列來處理這個問題?理論上,我可以創建一些代碼來填充隊列(因爲有64kb的消息大小限制,我想我可以在一條消息中放置10條記錄,因此總消息將像700k?)。然後我會有隊列觸發的webjob並進行計算。

但是,根據here,消息檢索的最大限制爲32。

這是否意味着最多可同時觸發32個Webjob?如果是這種情況,700000/32 = 21875,這意味着它需要很長時間才能完成。

有沒有辦法觸發更多的webjob並行運行,而不是32限制?

回答

0

通過組合BatchSizeNewBatchThreshold,可以獲得更高的併發性。查看它的最佳方式是併發限制是兩個標誌的總和。因此,如果您將BatchSize設置爲32並將NewBatchThreshold設置爲100,則併發限制將爲132.

有關詳細信息,請參閱https://github.com/Azure/azure-webjobs-sdk/issues/628更多信息。

相關問題