c# - 服务结构 - 用于调试/测试目的的手动 Actor 停用

标签 c# azure azure-service-fabric

我正在开发一个使用 ReliableActors 和状态的 Service Fabric 项目。我在 Actor 的状态下保存和删除内容,并有一些我想测试的重新激活逻辑。

有没有办法手动停用或垃圾收集 Actor ?我最好进行一个测试,将数据加载到 Actor 中,停用它,然后运行一些函数以确保 Actor 仍然按预期运行。

最佳答案

您可以adjust参与者被视为空闲以强制进行更频繁的垃圾收集的时间。文档中的代码:

ActorRuntime.RegisterActorAsync<MyActor>((context, actorType) =>
        new ActorService(context, actorType,
                settings:
                    new ActorServiceSettings()
                    {
                        ActorGarbageCollectionSettings =
                            new ActorGarbageCollectionSettings(idleTimeoutInSeconds: 20, scanIntervalInSeconds:20)
                    }))
        .GetAwaiter()
        .GetResult();

如您所见,有两个参数:idleTimeoutInSeconds — 在此之后,可以考虑停用不执行任何操作的 Actor; scanIntervalInSeconds — 服务结构检查参与者不活动的时间间隔。

关于c# - 服务结构 - 用于调试/测试目的的手动 Actor 停用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39700162/

相关文章:

visual-studio - Azure Service Fabric 不允许使用重复参数

azure-service-fabric - 服务结构中的actorevents有哪些限制?

azure-service-fabric - 应用洞察和服务结构?

c# - C# 中的三元运算符

Azure APIM 到 azure 函数相互身份验证

c# - 需要处理 NULL 异常

javascript - 如何将本地数据加载到js文件变量中?

javascript - 在使用 PKCE 的 OAuth 授权流程中使用时,如何在 Azure 应用程序注册中启用 CORS?

c# - 重新创建一个程序来运行 ssis 包。获取 LoadPackage 错误

c# - 如何使用 ANTLR 获得正确的编码?