如何将事件与Azure函数的所有实例联系起来

时间:2017-09-20 07:59:10

标签: azure azure-functions

我们有一个功能应用程序,可以在高峰负载下扩展到几百个实例,现在我们需要一种方法,如果特定事件发生(可能是队列中的新消息),所有实例都会被通知,是什么实现这一目标的潜在方法,请指教..

1 个答案:

答案 0 :(得分:0)

一种模式是具有共同标记(blob),当公共状态更新时,该标记会发生变化。每个实例都可以主动检查blob的etag以确定它是否已更改状态,如果是,则它知道重新加载其状态。 请注意:

  1. 实例检查(而不是等待更改通知)很重要,因为大多数通知机制可能存在延迟。例如,blob触发器可能会滞后几分钟。
  2. 无法绕过负载均衡器并向特定实例发送消息。因此,您无法主动发送无效消息。
  3. 另一种模式是让你在像Redis这样的东西中完全外化。这很容易失效和更新。 (虽然这基本上只是先前建议的特例)