首页 > 解决方案 > Autofac 依赖注入 Azure 函数 SingleInstance

问题描述

我跟着这个链接。https://dontcodetired.com/blog/post/Azure-Functions-Dependency-Injection-with-Autofac

运行时 Autofac 绑定

它工作得很好。我想知道当 azure 函数扩展时,注入 azure 函数的对象将由 azure 函数的所有实例共享。在这种情况下,对象是 NaiveInvestmentAllocator。

如果您有任何疑问,请告诉我。此外,我实际上实现了两个链接的组合。就像工厂模式用于从 Autofac 容器中获取实例对象一样。如果有人愿意,我可以分享代码但我认为没有必要。

我的问题是,如果我实现了第一个链接,注入的对象是否由相同 azure 函数的所有实例共享?

标签: dependency-injectionazure-functionsautofacazure-functions-runtimesingle-instance

解决方案


没有。

随着 Azure Functions 的扩展,其他实例在不同的 VM/容器上运行。它类似于在不同的 VM/容器上手动运行您的函数应用程序。

如果要求跨多个函数应用实例共享状态,则应将状态持久性卸载到Redis表存储Blob 存储等。

例如,您可以使用Azure Cache for Redis,并将相同的客户端注入您的服务类。

如果打算保存打开的连接数,请注意限制是每个实例。


推荐阅读