基于akka开发的分布式应用程序,分为两种角色:
1.master
作用:
接收worker的注册信息,并将worker注册的信息保存下来,感知worker的上下线,
接收worker的汇报心跳更新worker的相关信息
定时检测超时的worker,并将超时的worker从集群中移除
2.worker
作用:
向master进行注册,加入到集群中
定时向master汇报心跳
工作流程:
0.master启动后会启动一个定时器,每隔一定时间定时器检测集群中超时的worker,并将超时的worker移除掉
1.worker启动后向master进行注册(workerId,core,memory,disk...)
2.master接收到worker注册的消息后将其持久化保存起来,加入到workers列表中
3.注册成功以后,master向worker发送注册成功的消息给worker
4.worker接收到了注册成功的消息后,启动一个定时器,定时向master汇报心跳
5.master接收到worker的汇报心跳后,更新worker最近一次汇报时间