我开始在我的项目中使用Akka,以引入并行化并提高应用程序的性能。
在这方面,我有一个问题涉及getContext.parent()
方法与GetSender()
方法的使用,当需要将消息发送回既是当前演员的父母的演员,又是当前处理的发件人信息。
问题的背景
我的程序创建了一个系统,其中包含Report
演员和儿童Page
演员。
我有我的Report
演员要求每个页面用getToWork
消息执行各种治疗,并且Page
将jobFinished
消息发送回Report
演员,以便它知道每个页面都已完成。
问题
其中,在getContext().parent().tell
(使用ActorRef.noSender()
用于getToWork
消息)和getSender().tell()
(使用getSelf()
用于getToWork
消息)之间:
考虑到我在大数据项目上工作,这个项目必须尽快处理尽可能多的对象,这些问题让我感兴趣。
我认为替代品之间的效率没有太大差异。发送给发件人可能会让您的演员更容易测试和/或重构。