gpt4 book ai didi

java - 实例化参与者而不明确知道他们的名字

转载 作者:太空宇宙 更新时间:2023-11-04 14:10:47 26 4
gpt4 key购买 nike

我期待使用 AKKA(与 Java)作为分布式代理的分层系统,彼此相对独立。将会有一个协调参与者,并收到一条消息。它必须创建许多 child Actor (无需明确了解他们),并将消息路由给他们。子参与者按照约定扩展了 AppWorker 类。

我考虑过使用反射来简单地获取从 AppWorker 扩展的所有类,并创建每个类的实例。也许 AKKA 有更好的方法来做到这一点,但我可能不知道。我最关心的是,如果通过显式调用actorOf,我以后就能够将我的应用程序配置为扩展到多台机器。我希望保留 AKKA 在机器之间创建负载平衡 Actor 的完全自由。

你会怎么做?

最佳答案

AKKA 以分层方式创建 Actor。首先,创建一个父 Actor ,然后创建子 Actor 来执行所需的子任务集。创建一个单一协调 actor 的类并按以下方式创建一个 AKKA actor:1. 使用单个协调参与者的类名创建一个参与者系统。2. 使用actor系统的actorOf()方法并创建父actor。

现在通过调用父 Actor 的 actorOf() 方法并使用 withRouter() 方法来创建子 Actor。您可以在conf 文件中指定要创建的子actor 的数量。您还可以提及在启动子 Actor 时所需的监督策略。

对于所有基于 AKKA 的 Actor 研究以及如何启动它们,请参阅 http://doc.akka.io/docs/akka/2.3.9/general/actor-systems.htmlhttp://doc.akka.io/docs/akka/2.3.9/general/actors.html .

关于java - 实例化参与者而不明确知道他们的名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28348396/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com