设计模式 - Master-Worker模式
Master-Worker模式中 master负责收集任务和初始化,worker负责管理分配协调,具体任务落到具体的task结点中
其分工明确 与MapReduce的分而治之的思想一致。网上很多草图有些不够具体 乍看与Master-Worker模式中编码有一些出入。
准备阶段可以在监听器中 也可以在表中匹配 ,继承 具体的传递 get set 构造器 零时容器都可以,出入参数可以用适合的容器来装载
其中master相当于老板. 把相关信息给worker ,master所做的行为需要传递给worker 。 注: 也可以在监听器中进行初始化所有的master任务
这个传递的动作可可以在主任务丢进去
worker相当于item leader 在run里面开始分配任务 并得到任务反馈结果进行统计。 注:上面提到监听器处理 在此出可以过滤判断对应的任务
task 可以是接口 可以是调用对象
具体编码可度娘 不做概述,此处只是Master-Worker模式引导的思路
在项目使用上几乎很少运用此模式,考虑过在点击首页上进行统计计算 好像也不太合适,其他业务强加此模式有点锦上添花,相同的任务完全可以用线程代替 用futrue来计算,不同的任务可以用mq异步执行,所以 感觉没有太合适的应用场景,
群交流(262200309)