假设我有一个 Region Actor,每个区域里面都有一定数量的人。你如何向每个人广播消息,知道人员列表可以随时间变化,广播路由器似乎是选择,但问题是它们有最大数量的路由,我无法动态追加人员路由器。
我的问题是:我知道有一个 EventBus,我可以为我的人订阅事件总线,但我不希望他们收到发布的每条消息,我希望他们收到该地区的消息。
现在在akka中,我们必须创建一个具有一定数量routee的路由器,例如:
Router router = new router(person1, person2)
这很糟糕,因为一开始该地区没有人,我不知道将加入我的地区的人。
有没有办法制作一种动态路由器:示例:
Region region = new region()
region.router = new Router()
Person person1 = new Person()
region.router.subscribe(person1);
region.router.tell("hello",null);