我需要开发一个流程(例如Azure fucntion应用程序),该流程每周一次从FTP加载文件,并执行ETL并长时间(100分钟)更新到其他服务。
我的问题是,考虑到Azure功能应用程序的最长运行时间为10分钟,带有COMSUMPTION计划的Timer Trigger Azure Function应用程序是否可以在这种情况下工作?
更新
我将“计时器触发”功能与“消耗计划”一起使用的理论是,如果将计时器设置为在特定时间段(例如,仅从上午5点至上午10点)每4分钟唤醒一次,并且在该功能内,状态会告知您是否现有处理正在进行中。如果是,则该过程将继续其正在进行的工作,否则,该函数将退出。
这可行还是有缺陷?
答案 0 :(得分:0)
我不确定您的确切情况是什么,但我会考虑以下选项之一:
使用持久功能。 (Here is a C# example)
它将允许您启动过程,并且在等待其他任务完成时,您的功能实际上不会运行。
万一持久功能不符合您的需求,您可以尝试将计时器触发功能和ACI结合使用。
简而言之,您的流程应如下所示:
但是无论如何,持久功能通常可以解决问题。 让我知道是否有不清楚的地方。 祝好运。 :)
答案 1 :(得分:0)
使用“消费”计划时,天蓝色功能出租车最多可运行10分钟,但仍需要在host.json中进行配置
再次申请App Service Plan无限制,您需要在host.json中配置功能超时属性
有关以下教程的更多种子 https://sps-cloud-architect.blogspot.com/2019/12/azure-data-load-etl-process-using-azure.html