C# 服务结构扩展或创建服务实例

C# 服务结构扩展或创建服务实例,c#,azure,azure-service-fabric,hangfire,C#,Azure,Azure Service Fabric,Hangfire,我将使用ServiceFabric作为任务运行器,任务将在逻辑上分组为服务(或参与者,不确定),因此单个服务/参与者可以实现多个任务 在单独的服务中会有任务调度器(hangfire服务器),我想从中调用service/actor方法并等待结果。在这一点上,我希望以某种方式配置伸缩性,以便在空闲模式下没有服务正在运行,就像任务调度器需要调用服务时一样——创建尽可能多的服务实例 非常感谢您的帮助 默认情况下,服务始终在运行。如果要更改正在运行的无状态服务的数量,可以通过更改集群的大小(向内或向外扩展

我将使用ServiceFabric作为任务运行器,任务将在逻辑上分组为服务(或参与者,不确定),因此单个服务/参与者可以实现多个任务

在单独的服务中会有任务调度器(hangfire服务器),我想从中调用service/actor方法并等待结果。在这一点上,我希望以某种方式配置伸缩性,以便在空闲模式下没有服务正在运行,就像任务调度器需要调用服务时一样——创建尽可能多的服务实例


非常感谢您的帮助

默认情况下,服务始终在运行。如果要更改正在运行的无状态服务的数量,可以通过更改集群的大小(向内或向外扩展)来实现。您可以基于性能计数器配置自动缩放(在Azure中),也可以手动缩放

更改实例计数的第二种方法是创建一个管理这些无状态服务的附加服务(创建/删除实例)。
例如,您可以根据任务队列深度进行扩展。

使用参与者而不是服务有什么好处吗?参与者并不总是在运行。经过一段可配置的时间后,如果没有调用任何actor方法(基于每个actor id),那么它们将被垃圾收集。不会丢失任何数据(它们是有状态的服务),但只要您再次调用该特定参与者id上的方法,就会实例化一个新实例,并且您的状态与以前一样。