【问题标题】:Keeping user session alive with Azure Function使用 Azure Function 保持用户会话活跃
【发布时间】:2018-08-22 12:58:18
【问题描述】:
由于我无法使用队列触发基于计时器的函数或为其提供参数(会话 ID 以使其保持活动状态,每 30 分钟刷新一次),是否可以创建基本的 HTTP/队列函数(而不是计时器函数)并在内部添加带有自定义计时器的 c# 代码?函数一旦触发会永远运行吗?
【问题讨论】:
标签:
.net
azure
azure-functions
timer-trigger
【解决方案1】:
不,正如@Will 在他的评论中提到的那样,您不能使用 Azure Function 永远(连续地)运行。由于 Azure Functions 的设计旨在在特定时间限制内减少负载。
time limit of Consumption Plan 说
消耗计划中函数的默认超时为 5 分钟。
函数应用程序的值最多可增加到 10
通过更改 host.json 中的属性函数 timeout 分钟
项目文件。
因此,作为最佳实践,您应该避免在 Azure Function 中长时间运行作业。
对于您的用例,您可以使用Azure Web Apps。 Azure Web Apps 是专为长时间运行的作业而设计的。
- 您可以创建一个基本的 HTTP/Queue 函数
- 这反过来又叫你的
- Azure Web 应用 Azure Web 应用然后按照您的意愿永远运行。