运行 在 azure service fabric 中的有状态服务上安排的后台作业按计划时间更新 Reliable Dictionary 中的一些数据

Run scheduled background job on stateful service in azure service fabric to update some data in Reliable Dictionary on schedule time

是否有 运行 Azure 服务结构中有状态服务的预定后台作业?我发现的唯一方法是计时器和提醒,它们 运行 在 Actors 上而不是有状态服务。我正在尝试 运行 预定的后台作业来清理 Reliable 字典中的一些数据。

在 Service Fabric 中 运行 后台作业的推荐方法是简单地覆盖 RunAsync 操作。这同样适用于有状态和无状态服务 - 尽管如前所述,Actors 提供了一些额外的功能,内置了对提醒和计时器的支持。

下面是一个非常基本的例子

public async Task RunAsync(CancellationToken cancellationToken)
{
    // do something
    var nextWakeup = TimeSpan.FromHours(1);
    await Task.Delay(nextWakeup, cancellationToken);
}

如果您需要更复杂的东西,例如,您可以增强以上内容以使用 IReliableStateManager 来管理您自己的提醒集合。