Akka的字数统计MapReduce

在我与Akka的日常工作中,我最近写了一个字数映射表简化示例。 本示例实现了Map Reduce模型,该模型非常适合横向扩展设计方法。

  1. 客户端系统(FileReadActor)读取文本文件,并将每一行文本作为消息发送给ClientActor。
  2. ClientActor具有对RemoteActor的引用(WCMapReduceActor),并且消息传递到远程Actor
  3. 服务器(WCMapReduceActor)获取消息。 Actor使用PriorityMailBox来确定消息的优先级并相应地过滤队列。 在这种情况下,PriorityMailBox用于在mapreduce请求之间隔离消息,并从聚合角色获取结果列表(DISPLAY_LIST)消息。
  4. WCMapReduceActor将消息发送到MapActor(使用RoundRobinRouter调度程序)以映射单词
  5. 映射单词后,将消息发送到ReduceActor(使用RoundRobinRouter调度程序)以减少单词
  6. 精简后的结果将发送到Aggregate Actor,后者对结果进行内存内聚合

下图详细说明了程序的结构

该程序的代码库位于以下位置-https://github.com/write2munish/Akka-Essentials
有关MapReduce的更多信息,请阅读MapReduce for dummies

参考: Akka Essentials博客上的JCG合作伙伴 Munish K Gupta提供的Akka 字数统计MapReduce


翻译自: https://www.javacodegeeks.com/2012/04/word-count-mapreduce-with-akka.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值