如何结合 Service Fabric Remoting 进行分区
How to do partitioning in combination with Service Fabric Remoting
比方说,我正在使用 Azure Service Fabric Stateful Service 和 RemotingV2,我想存储用户 phone 号码(这是我的服务所做的唯一事情)。
Task StoreNumber(string username, string phoneNumber);
Task<string> GetNumber(string username);
我想使用用户名进行分区
这样做的优雅方法是什么?
我可以从方法中删除 username
参数并以某种方式从请求中获取它吗?
有没有更好的方法?
谢谢
这是与之配套的 video that covers this subject and here's a working code sample。
- 使用(正确的,例如 FNV)散列算法获取
username
的散列,使用long
结果通过其键确定Int64RangePartition
。 - 使用为您进行哈希处理的网关(例如 api 管理或自定义无状态服务)并转发呼叫
- 您可以使用 customer headers 来传递
username
。 (样本没有)