Service Fabric 可靠服务:通信和分区要点
Service Fabric Reliable Services: Communication and Partitioning essentials
在发现 SF Reliable Services 时,我想确保接下来的基本陈述是真实的。
Reliable Services 默认通信堆栈 (DefaultStack) 和 Reliable Actors 通信堆栈(使用 ServiceProxy/ActorProxy)只能用于 SF 集群内部的通信。外部客户必须使用 WebAPI/WCF 个堆栈。
ServicePartitionResolver、CommunicationClientFactory、ServicePartitionClient 是已经在 DefaultStack 中实现的东西。如果我只使用 DefaultStack 我就不用担心了。
有些Stateful服务有多个partition,比如我想post一个item来处理。决定 posting 客户应该使用哪个分区不是顺丰的责任。我需要手动实现一个解析分区键或名称的算法,并在 ServiceProxy 构造函数(对于 DefaultStack)中使用它。
你在所有这些方面都是正确的,
- 如果你想在 Service Fabric 之外进行通信,你需要使用类似 OwinCommunicationListener 的东西(参见 here)。
- 如果您想插入自己的通信堆栈,则只需实施这些。
- 是的,您需要在创建 ServiceProxy 时定义分区键。
在发现 SF Reliable Services 时,我想确保接下来的基本陈述是真实的。
Reliable Services 默认通信堆栈 (DefaultStack) 和 Reliable Actors 通信堆栈(使用 ServiceProxy/ActorProxy)只能用于 SF 集群内部的通信。外部客户必须使用 WebAPI/WCF 个堆栈。
ServicePartitionResolver、CommunicationClientFactory、ServicePartitionClient 是已经在 DefaultStack 中实现的东西。如果我只使用 DefaultStack 我就不用担心了。
有些Stateful服务有多个partition,比如我想post一个item来处理。决定 posting 客户应该使用哪个分区不是顺丰的责任。我需要手动实现一个解析分区键或名称的算法,并在 ServiceProxy 构造函数(对于 DefaultStack)中使用它。
你在所有这些方面都是正确的,
- 如果你想在 Service Fabric 之外进行通信,你需要使用类似 OwinCommunicationListener 的东西(参见 here)。
- 如果您想插入自己的通信堆栈,则只需实施这些。
- 是的,您需要在创建 ServiceProxy 时定义分区键。