Azure功能弹性高级计划和队列触发器

发布于 2025-01-25 12:57:01 字数 1309 浏览 3 评论 0 原文

我们有一个解决方案,我们使用Azure存储队列处理大约6分钟的消息。

我已经读到,队列消息的最大 batchsize 同时处理的是 32 每个VM。

如果功能应用程序扩展到多个VM,则每个VM可以运行每个队列触发函数的一个实例。

https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-storage-queue?tabs=in-process%2CEXTENDER pivots =编程语言csharp#host-json

这如何转化为 azure function premium prom plan ? 可以说,我们希望能够使用Azure功能高级计划立即处理 64 消息,始终准备就绪实例。如果我们有 2 就绪实例,它们可以处理2 * 32并发消息吗?还是他们水下真的需要分开的VM,并且2个实例不会做任何不同的事情?

在Premium Plan中,您可以在指定数量的实例上始终准备好自己的应用程序。始终准备的实例的最大数量为20。当事件开始触发应用时,它们首先将其路由到始终准备就绪。

https:> https: //learn.microsoft.com/en-us/azure/azure-functions/functions-premium-plan?tabs = portal#always-dready-instances

We have a solution where we use an Azure Storage Queue to process messages that take approx 6 minutes.

I've read that the maximum batchSize of Queue messages concurrently processed are 32 per VM.

If the function app scales out to multiple VMs, each VM could run one instance of each queue-triggered function.

https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-queue?tabs=in-process%2Cextensionv5%2Cextensionv3&pivots=programming-language-csharp#host-json

How does that translate to Azure Functions Premium plan?
Lets say we want to be able to process 64 messages at once using Azure Functions Premium plan with Always ready instances. If we have 2 ready instances, can they process 2 * 32 concurrent messages? Or do they underwater really need to be on seperate VM's and 2 instances will not do anything different?

In the Premium plan, you can have your app always ready on a specified number of instances. The maximum number of always ready instances is 20. When events begin to trigger the app, they are first routed to the always ready instances.

https://learn.microsoft.com/en-us/azure/azure-functions/functions-premium-plan?tabs=portal#always-ready-instances

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

故人的歌 2025-02-01 12:57:01

是的。在Azure函数高级计划中,如果您已经有预热的实例,则可以给出 doticated vm实例。因此,如果您有2个运行功能应用程序的VM实例,则可以处理2*( batchSize + newBatchThreshold )并发队列消息!
随着现有实例变得更加忙碌,Azure平台将函数应用程序扩展到新的VM。

Yes. In Azure Functions premium plan, if you have pre-warmed instance, then that is given a dedicated VM instance. So, if you had 2 VM instances running your function app, then they can process 2*(batchSize + newBatchThreshold) concurrent Queue messages!
The Azure platform scales the function app onto new VM as the existing instances gets more busy.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文