一、设计目的
设计出一个通用的Master-Slave基础框架,然后可以基于这个框架来实现特定的业务需求,比如实现多节点并行计算、分布式处理等。
二、设计理念
基于经典的命令模式,Master和Slave之间通过相互发送命令(Command)实现交互,命令是一个抽象的概念,Command可以用来分发任务,也可以用来传输数据, 这完全由业务来决定怎么处理, 框架只定义了一个实际的命令-心跳检测命令(Heartbeat Command)。可以通过定义自己的命令,并提供响应的命令处理器,来实现任何形式的业务。框架提供的核心功能其实只有,底层的网络通信,Master/Slave关系的维系,命令的分发功能。
三、详细设计系统类图
核心接口和类:
名称类型方法说明
Nodeinterface
扩展
Runnable接口void init()节点初始化接口Node: 代表分布式节点,Master或Slave节点,分布式节点,Master节MasterNodel和Slave节SlaveNode实现本接口
void start()节点启动
void stop()节点停止
void reset()节点重启
名称类型方法说明
MasterNodeclass实现Node接口Master节点,负责管理Slave节点,分发命令给Slave
名称类