Akka 从另一个树枝访问演员
Akka acessing actor from another tree branch
我有几个演员的 Akka 应用程序。演员树看起来像这样:
/user
/one TARGET
/two /three
SOURCE
在源演员中,我必须向目标演员发送消息。但是,我不知道如何正确地做到这一点。
每次都从 ActorSelection 解析 ActorRef 似乎很糟糕。
有规律吗?
我知道并使用的两种模式是:
- 在发送给 SOURCE 的原始消息中传递 TARGET 的 ActorRef,这样 SOURCE 就知道要响应 TARGET。当 TARGET 与消息不同时,这很有效,并且使单元测试变得容易。
- 在 ESB 或服务定位器中从 ActorSelection 解析一次 TARGET ActorRef,然后将其传递给 SOURCE,并使用它。这在 actor 系统中只有一个 TARGET 实例时效果很好,但是它会使单元测试稍微复杂一些。
我有几个演员的 Akka 应用程序。演员树看起来像这样:
/user
/one TARGET
/two /three
SOURCE
在源演员中,我必须向目标演员发送消息。但是,我不知道如何正确地做到这一点。
每次都从 ActorSelection 解析 ActorRef 似乎很糟糕。
有规律吗?
我知道并使用的两种模式是:
- 在发送给 SOURCE 的原始消息中传递 TARGET 的 ActorRef,这样 SOURCE 就知道要响应 TARGET。当 TARGET 与消息不同时,这很有效,并且使单元测试变得容易。
- 在 ESB 或服务定位器中从 ActorSelection 解析一次 TARGET ActorRef,然后将其传递给 SOURCE,并使用它。这在 actor 系统中只有一个 TARGET 实例时效果很好,但是它会使单元测试稍微复杂一些。