0

我试图弄清楚如何生成一个ServiceProxy指向我当前正在其中执行的服务的。我需要传达有关它的信息,以便另一个服务可以回调此特定实例:因为它是有状态的。

ServiceProxy似乎通过分区键进行解析。但是,我看不到如何获取当前正在执行的服务的分区键。我可以获得分区Guid。但是,ServiceProxy 不能与它一起使用。

示例用例:我有一个StatefulService调用外部 HTTP API 的。它向这个 API 发布一条消息,这会导致 API 在一段时间后回调到我的基础架构中。我构建的 HTTP 端点需要解析原始端点,StatefulService以便将响应路由回它。

4

1 回答 1

2

您可以获取分区的键范围并将低键值发送到外部 HTTP API。当该外部 API 需要为回调解析分区时,它可以使用低键值作为分区键,从而保证它会落在正确的分区范围内:

Int64RangePartitionInformation partitionInfo = this.ServicePartition.PartitionInfo as Int64RangePartitionInformation;
long lowKey = partitionInfo.LowKey;
于 2015-12-28T23:48:13.433 回答