如何在Akka.Net中使用动态路由器路由实现自定义路由

时间:2018-11-22 17:11:42

标签: c# akka.net

How to implement custom routing in Akka.Net

非常相似的问题

我想将路由器用于具有滚动窗口时间范围的缓存框架。我希望路由器根据消息中的值(组合)将消息路由到正确的参与者。我不能使用一致的哈希路由器,因为列表会增加并且计数事先未知。

我可以实现一个IDictionary并拥有一个父actor,当找不到密钥时,该父actor可以创建一个新actor。感觉很脏,我想我会遇到主管策略问题,需要执行某种健康检查。

有没有一种方法可以创建自定义路由器,类似于上述问题的答案?

注意:拥有状态的参与者需要对事件进行实时汇总和计算。

1 个答案:

答案 0 :(得分:0)

说实话,听起来Akka.Cluster.Sharding正是您想要的。它允许您将消息路由到集群中的参与者(如果尚不存在,可以临时创建它们)。它还涵盖了场景的重新平衡以及从死节点迁移参与者的情况(这样一来,您就不需要进行任何运行状况检查)。