Azure service fabric 当一个分区移动到一个新的节点时,是否有停机时间?

Azure service fabric 当一个分区移动到一个新的节点时,是否有停机时间?,azure-service-fabric,Azure Service Fabric,ServiceFabric提供了在节点被移除或添加到集群时重新平衡分区的功能。Service Fabric群集资源管理器将把一个或多个分区移动到此节点,以便可以完成更多工作 设想一个可靠的参与者服务,它有数千个参与者在运行,这些参与者分布在多个分区中。如果资源管理器决定移动一个或多个分区,这会导致停机吗?或者重新平衡分区的工作原理与升级服务相同吗 服务升级和服务重新平衡之间的主要区别在于,在升级过程中,在特定节点上关闭所有分区的所有副本。根据文档,平衡是在副本的基础上进行的,即只有来自某些分区的

ServiceFabric提供了在节点被移除或添加到集群时重新平衡分区的功能。Service Fabric群集资源管理器将把一个或多个分区移动到此节点,以便可以完成更多工作


设想一个可靠的参与者服务,它有数千个参与者在运行,这些参与者分布在多个分区中。如果资源管理器决定移动一个或多个分区,这会导致停机吗?或者重新平衡分区的工作原理与升级服务相同吗

服务升级和服务重新平衡之间的主要区别在于,在升级过程中,在特定节点上关闭所有分区的所有副本。根据文档,平衡是在副本的基础上进行的,即只有来自某些分区的一些副本会被移动,因此不会出现任何中断。

服务升级和服务重新平衡之间的主要区别是,在升级过程中,来自所有分区的所有副本都会在特定节点上关闭。根据文档,平衡是在副本的基础上进行的,即只有来自某些分区的一些副本会被移动,因此不会出现任何中断。

它们的行为方式基本相同,我可以指出的主要区别是升级可能只会影响正在更新的服务,重新平衡可能会同时影响多个服务。在升级过程中,集群还可能重新平衡服务,以适应节点中的新服务实例

添加或删除节点我将更多地与节点故障进行比较。在这些情况下,由于集群容量的变化,而不是因为服务度量\负载的变化,它们将被重新平衡


节点故障和集群扩展(添加/删除节点)之间的主要区别在于,当基础结构通知通知某个节点正在关闭(用于更新或维护,或缩小规模)时,重新平衡将在过程中考虑服务状态SF将要求基础设施等待,以便为这一宣布的“失败”做好准备,然后开始重新平衡服务

即使重新平衡考虑到服务状态的可扩展性,也不应认为它比节点故障更可靠,因为在SF检查服务是否满足运行状况之前,基础结构将在关闭节点之前停止(它可以等待的限制将取决于您为集群定义的可靠性层),与关闭服务和创建新服务一样,检查它们是否可以正常运行而不会出现错误,如果此过程花费的时间太长,则一旦达到超时,这些服务可能会被终止,并且基础结构将继续进行更改,此外,服务的新实例可能会在新节点上失败,从而迫使服务再次移动


当您设计服务时更安全地考虑重新平衡作为节点故障,因为最终没有太大的不同。您的服务将四处移动,存储在内存中的数据如果不持久化将丢失,服务地址将更改,等等。服务应具有复制的数据,客户端应始终使用重试逻辑并刷新服务位置以减少停机时间。

它们的操作方式基本相同,我可以指出的主要区别是升级可能只影响正在更新的服务,而重新平衡可能会同时影响多个服务。在升级过程中,集群还可能重新平衡服务,以适应节点中的新服务实例

添加或删除节点我将更多地与节点故障进行比较。在这些情况下,由于集群容量的变化,而不是因为服务度量\负载的变化,它们将被重新平衡


节点故障和集群扩展(添加/删除节点)之间的主要区别在于,当基础结构通知通知某个节点正在关闭(用于更新或维护,或缩小规模)时,重新平衡将在过程中考虑服务状态SF将要求基础设施等待,以便为这一宣布的“失败”做好准备,然后开始重新平衡服务

即使重新平衡考虑到服务状态的可扩展性,也不应认为它比节点故障更可靠,因为在SF检查服务是否满足运行状况之前,基础结构将在关闭节点之前停止(它可以等待的限制将取决于您为集群定义的可靠性层),与关闭服务和创建新服务一样,检查它们是否可以正常运行而不会出现错误,如果此过程花费的时间太长,则一旦达到超时,这些服务可能会被终止,并且基础结构将继续进行更改,此外,服务的新实例可能会在新节点上失败,从而迫使服务再次移动

当您设计服务时更安全地考虑重新平衡作为节点故障,因为最终没有太大的不同。您的服务将四处移动,存储在内存中的数据如果未持久化将丢失,服务地址将更改,等等。服务应具有复制的数据,客户端应始终使用重试逻辑并刷新服务位置以减少停机时间