Azure Service Fabric 如何为全状态服务支持多区域?
How multi region is supported in Azure Service Fabric for state-full services?
Azure Service Fabric 如何支持 multi region state-full 服务?
我了解可以为无状态服务配置多区域支持,但是状态完整服务如何跨越多个区域
有可能,但不公开推荐,来自 FAQ
Can I create a cluster that spans multiple Azure regions or my own datacenters?
Yes.
The core Service Fabric clustering technology can be used to combine
machines running anywhere in the world, so long as they have network
connectivity to each other. However, building and running such a
cluster can be complicated...
存在许多挑战和限制,例如 VNET 不跨越多个区域、性能和延迟。
在有状态服务上,挑战会更高,因为数据在被考虑之前必须被复制 'commited',不得不在多个区域复制数据,增加了很多延迟并增加了失败的风险,它还会受到网络速度的影响,网络速度不如同一区域或同一数据中心内的区域之间的连接速度快。将您的服务(数据)实例放置在可以在不同区域同时关闭的放置组中也存在风险,即使它们是不同的域,它们也可能处于相同的维护计划中。
在 Azure 内部,基于 SF 的服务(如 EventHub)被部署为跨多个区域的同一区域内的多个集群。这已经为您的集群提供了足够的可靠性,以防整个区域出现故障,为了获得更好的可靠性和持久性,您可以将现有集群镜像为另一个区域中的故障转移,并执行常量 backups\restore 以保持同步。
Azure Service Fabric 如何支持 multi region state-full 服务?
我了解可以为无状态服务配置多区域支持,但是状态完整服务如何跨越多个区域
有可能,但不公开推荐,来自 FAQ
Can I create a cluster that spans multiple Azure regions or my own datacenters?
Yes.
The core Service Fabric clustering technology can be used to combine machines running anywhere in the world, so long as they have network connectivity to each other. However, building and running such a cluster can be complicated...
存在许多挑战和限制,例如 VNET 不跨越多个区域、性能和延迟。
在有状态服务上,挑战会更高,因为数据在被考虑之前必须被复制 'commited',不得不在多个区域复制数据,增加了很多延迟并增加了失败的风险,它还会受到网络速度的影响,网络速度不如同一区域或同一数据中心内的区域之间的连接速度快。将您的服务(数据)实例放置在可以在不同区域同时关闭的放置组中也存在风险,即使它们是不同的域,它们也可能处于相同的维护计划中。
在 Azure 内部,基于 SF 的服务(如 EventHub)被部署为跨多个区域的同一区域内的多个集群。这已经为您的集群提供了足够的可靠性,以防整个区域出现故障,为了获得更好的可靠性和持久性,您可以将现有集群镜像为另一个区域中的故障转移,并执行常量 backups\restore 以保持同步。