使用akka模拟spark的Master和Worker的心跳检测

2019-04-20  本文已影响0人  星辰fml

在spark中的worker会定期想master进行心跳汇报,spark Master管理着所有的Worker信息(如,内存、executor占用情况等)。
本次试用akka+scala来模拟spark的Master和Worker的心跳检测信息,仅记录下曾经的夜晚。开始吧。

定义消息

因为主要模拟心跳检测信息,所以只定义了Master和Worker之间通信的消息:


远程通信消息

Master定义

Master定义

其中最主要的是receive方法接受远程消息:


receive方法

Worker定义

Worker定义

其中最主要的receive方法来定期发送心跳到远程Master节点:


receive方法

测试

本文只是简单模拟了下spark的Worker和Master的心跳检测。
项目地址:https://github.com/zapjone/akka-distribute

上一篇 下一篇

猜你喜欢

热点阅读