【发布时间】:2021-09-24 03:47:39
【问题描述】:
我是持久函数的新手,并且已经设置了一个基于消费(无服务器)的函数计划,其中我安装了一个持久函数。
该函数用于计算大量数学方程并将结果写入数据矩阵。使用 4 个内核(8 个处理器)运行通常需要 1 到 5 分钟。输出写入 MySql 数据库,由客户端应用轮询以检索更新和结果。
一切正常,直到我尝试对其进行缩放...
我注意到每次运行它时,它都会提供对两个处理器的访问。但是,如果我同时从两个客户端调用它两次,那么每个客户端似乎只获得 1 个处理器并且它以一半的速度运行。三个客户端调用需要更长的时间......那么扩展在哪里?
请注意,我尝试过扇出,但这太慢了(可能是因为计算中的数据量很大)。
我的问题是:-
当它扩展到 100 个并发呼叫时会发生什么?
有没有更有用的计划让我每次执行最少 N 个处理器?
它可能会同时调用 500 甚至 1000 个……Azure 可以应付吗?
我考虑过设置 100 个相同的函数(显然具有不同的名称)并为每个客户端依次调用它们……这可行吗?如果是这样,那么需要它似乎很奇怪。
【问题讨论】:
标签: azure azure-durable-functions