azure . API自动缩放功能不工作

tzcvj98z  于 2023-04-07  发布在  其他
关注(0)|答案(2)|浏览(100)

我有一个.NET 7 REST API,它具有单例类初始化。
它在单个示例中工作正常,在多个示例中失败。
下面是我的单例初始化。

Engine _engine = new Engine(loggerFactory);
builder.Services.AddSingleton<Engine>(_engine);

此功能主要是将文件夹删除/加载到wwwroot目录。
有没有人能给予我一个关于使用单例类的多个示例的解决方案?

w7t8yxp5

w7t8yxp51#

有没有人能给予我一个关于如何使用单例类的多个示例的解决方案。
确保每次只运行Azure Function应用程序的单个示例是SingletonAttribute类的责任。
这个类还有其他功能,可以限制当时运行的示例数,这会影响可伸缩性和性能。
该特性是FunctionInvocation属性的Mode属性,语法为:
Mode = Function / Listener

[Singleton(Mode = SingletonMode.Listener)]
[FunctionName("ListenerTest")]

如果mode属性是Listener,那么它执行单示例执行,Function模式可以给予您运行多个示例和同时执行,但确保一次只有一个示例处理给定的函数调用。
有关使用SingletonAttribute-FunctionInvocation-Mode运行多个示例的详细信息,请参阅作者@yu_ka1984的此MS Doc和介质article

svmlkihl

svmlkihl2#

通过删除计算机名称下的文件修复了此问题

相关问题