Finagle KetamaShardingServiceBuilder 未知

Finagle KetamaShardingServiceBuilder is unknown

我们正在使用 finagle 作为休息 api,并且由于我们需要一些奇异的负载平衡,我们使用 Finagle 的 KetamaShardingServiceBuilder 在 19.3

中可用

我尝试将 finagle 版本更新到 20.10,但 KetamaShardingServiceBuilder 似乎消失了。变更日志中没有任何指示,万维网上也几乎没有任何参考。在版本 20.3 之后,ShardingService(带有 KetamaShardingServiceBuilder)似乎已从 com.twitter.finagle.core.service 中完全删除,没有文档或弃用。

希望这里有更多见解?

jerry,看来这个问题在 gitter 中得到了回答,我会尝试在这里关闭循环。

ShardingService 和 KetmaShardingServiceBuilder 在 20.3.0 中是 removed, changelog here, with the reason we believe it is a duplication of PartioningService,抱歉没有先弃用它以发出警告。

取决于您使用的协议,提供更复杂的分区 API 作为替代方案,更多文档

http://twitter.github.io/finagle/guide/Clients.html#partition-aware-client http://twitter.github.io/finagle/guide/PartitionAwareClient.html

我相信 HashingPartitioningStrategy 会提供与您正在寻找的 KetamaShardingServiceBuilder 等效的算法(如果使用 Ketama 作为哈希器)。