Azure函数体系结构:

因此,我们在Azure Datafactory中设置了一个管道,它包含4个触发器,同时在4个不同的参数下触发Function1。
流水线->函数1-顺式1-顺2函数1-顺式3函数1-顺4
昨天,我试着在5分钟内触发这条管道2次,例如10:30和10:31。这意味着,那次我在5分钟内用了8次Function1。
流水线->
时间1功能1-顺功能1-顺2功能1-顺3功能1-顺4 10:30
时间2功能1-顺1功能1-顺2功能1-顺3功能1-顺4 10:31
奇怪的是,我们预计将有8个调用运行并行,因为FUNCTION_WORKER_PROCESS_COUNT设置为10,但是只有6个调用在并行运行,2个正在运行。
所以问题是,FUNCTION_WORKER_PROCESS_COUNT和可以并行运行的任务之间的关系是什么。
函数是用Powershell 7编写的。
发布于 2022-04-20 16:32:58
AFAIK,每个函数主机实例的最大工作进程数受FUNCTIONS WORKER PROCESS COUNT变量的限制。这些实例被视为独立的VM,每个实例都有FUNCTIONS WORKER PROCESS COUNT限制。
如果将FUNCTIONS WORKER PROCESS COUNT设置为10,则每个主机实例将同时执行10个单独的函数。
Multiple Workers的意思是Multiple Process Ids of Same Function App,它是函数的逻辑集合。
1 one Worker Process可以承载一个函数应用程序的所有函数,其中单一主机的默认值为FUNCTIONS_WORKER_PROCESS_COUNT,函数主机意味着函数应用程序作为FUNCTIONS_WORKER_PROCESS_COUNT/Linux进程运行的是物理/虚拟主机。
有关FUNCTIONS_WORKER_PROCESS_COUNT机制的更多信息,请参考FUNCTIONS_WORKER_PROCESS_COUNT。
扩展还允许您更快地适应需求的变化。
为了满足资源需求,通常可以迅速添加或删除服务。这种灵活性和快速性仅通过使用(并支付)目前所需的资源来有效地节省开支。
有关扩展和扩展的好处的更多信息,请参考此文章。
关于FUNCTIONS_WORKER_PROCESS_COUNT更多信息的参考资料
https://stackoverflow.com/questions/71918960
复制相似问题