如何在Azure函数中保持状态(便宜的方法)?

如何在Azure函数中保持状态(便宜的方法)?,azure,azure-functions,Azure,Azure Functions,如何在Azure函数执行之间保留少量数据?比如在一个全局变量中?该函数在计时器触发器上运行 我需要存储一个Azure函数执行的结果,并将其用作同一函数下一次执行的输入。在函数执行之间存储数据最便宜(不一定最简单)的方法是什么 (目前我使用的Azure函数是免费的,每个人都可以获得,现在我想以类似的免费或廉价方式保存状态。)有几个选项-我建议您将状态存储在blob中 可以使用blob输入绑定读取每次执行的全局状态,并使用blob输出绑定更新该状态 您还可以删除计时器触发器并使用队列,队列消息中存储

如何在Azure函数执行之间保留少量数据?比如在一个全局变量中?该函数在计时器触发器上运行

我需要存储一个Azure函数执行的结果,并将其用作同一函数下一次执行的输入。在函数执行之间存储数据最便宜(不一定最简单)的方法是什么


(目前我使用的Azure函数是免费的,每个人都可以获得,现在我想以类似的免费或廉价方式保存状态。)

有几个选项-我建议您将状态存储在blob中

可以使用blob输入绑定读取每次执行的全局状态,并使用blob输出绑定更新该状态

您还可以删除计时器触发器并使用队列,队列消息中存储状态并在消息上设置可见性超时以设置计划(即下一次执行时间)

最后,您可以在文件系统上使用一个文件,因为它在函数应用程序中共享

如果您可以接受数据丢失的可能性,并且只在实例级别进行维护,那么您可以:

  • 维护静态数据结构
  • 写入实例本地存储

这是一个旧线程,但值得分享Azure函数中处理状态的新方法

现在我们有了微软自己的持久功能方法,我们可以非常轻松有效地维护功能状态。请参阅MS提供的以下文档


持久实体现在可用于处理状态的持久性


函数的初始输入是什么?您的函数是如何触发的?函数在计时器触发器上运行。所以每10分钟说一次。我将此信息添加到问题中。谢谢!所以我假设你的函数在触发时从某处读取数据。这些数据的来源是什么?你不能简单地覆盖它吗?我认为azure存储将是存储数据的最简单的方法我确信azure功能应该是无状态的,这就是所有关于使用文件系统的文档的想法?我的印象是,只要有足够的负载和适当的资源调配,功能可以随时从一个物理主机迁移到下一个物理主机,或在多个主机上运行。古老但相关:)感谢您的来电。