Azure函数-初始化逻辑

时间:2018-08-19 06:56:35

标签: azure-functions azure-functions-runtime

我正在尝试通过HTTP触发器了解Azure功能-

  1. 我应该在哪里放置初始化代码,该代码我打算只运行一次,而不是在每个HTTP调用上运行。例如,连接到Keyvault,从数据库加载主数据等。
  2. 是否有多种方法可以共享内存。我可能想在多个Azure函数中使用相同的Keyvault和数据库。

1 个答案:

答案 0 :(得分:2)

函数调用是相互独立的,因此无法保证某些代码只能执行一次。如果您的功能承受沉重的负担,它甚至可能会分布到多台计算机上,并且它们都可以独立运行。

但是,您可以做的是在函数中声明静态变量,并且它们通常会在两次调用之间保留其值。通常,没有保证!

第二,您无法在两次调用之间共享内存。要共享状态,您应该依靠其他存储解决方案,例如Redis Cache