`

<一>基于Fourinone实现分布式计算上手指南和demo

阅读更多

本demo用最简洁的代码示范fourinone如何进行分布式计算,fourinone采用一种工头链式结合工人并行的计算结构简化分布式计算,能够通俗易懂并能深入控制整个计算过程



SimpleCtor:是一个工头实现,它实现giveTask接口,并通过getWaitingWorkers获取线上工人节点(工人节点为一个独立进程,它可以独立部署一台机器也可以一台机器部署多个),并调用该工人的doTask方法完成任务,传入的任务是一句“hello”的话。注意工人的doTask方法是一个异步调用,它会马上返回一个result,但是没有值,需要轮循result是否有值为止,有值就代表工人已经处理完该任务了。这样做是因为当多个任务分配给多个工人完成时,他们之间是并行的,不会等待前个工人完成再去分配下一个工人任务。

SimpleWorker:是一个工人实现,它实现doTask接口,从WareHouse获取到工头的传入参数word,并回应“hello word”,它的输入输出类型都是WareHouse,WareHouse是一个map结构,可以放置任何类型的对象。SimpleWorker通过waitWorking开始等待任务,waitWorking需要输入一个参数,给该工人指定一个类型描述,在更复杂的应用中,可以设计多种类型的工人,比如有的做任务处理,有的做任务结果合并。

ParkServerDemo:是负责分布式计算过程的协同服务,它必须启动才能完成分布式计算.

运行步骤:
1、启动ParkServerDemo(它的IP端口已经在配置文件的PARK部分的SERVERS指定)
2、运行SimpleWorker(它的IP端口已经在配置文件的WORKER部分的SERVERS指定)
3、运行SimpleCtor

注意:以上程序启动时都需要配置文件config.xml,可以将配置文件、程序class文件、fourinone.jar三者放相同目录,如果class文件有包名,需要放在包根目录处,这样能默认找到。也可以通过BeanContext.setConfigFile指定其他目录位置,特别是使用eclips会自动生成class目录和运行目录,导致具体路径不清晰,可以尝试指定绝对路径,或者慢慢调试改成相对路径。

掌握fourinone最基本的工头工人分布式计算方式后, 可以进一步学习另一个完整的demo, 会示范多个任务多个工人的分配和结果轮循以及多个工头的链式处理方式

邮箱:fourinone@yeah.net
腾讯群:1313859

本demo源码和开发包下载
http://www.skycn.com/soft/68321.html
  • 大小: 44.1 KB
2
1
分享到:
评论
5 楼 tx6731 2017-03-12  
同问2楼问题,一直没有输出result,除非加sleep
4 楼 妞给爷小个 2016-11-23  
     
3 楼 fourinone 2013-06-24  
kkmike999 写道
SimpleCtor的giveTask,每次
if (result.getStatus() == WareHouse.READY) 
都需要
Thread.sleep


不然while(true)一直循环,我也不知道为什么~


只要工人任务完成了,这里循环就会退出。
如果需要工头执行完giveTask后也退出,可以调用工头的exit()方法。
详细demo运行和调试可以到qq技术群内咨询。
2 楼 kkmike999 2013-06-24  
SimpleCtor的giveTask,每次
if (result.getStatus() == WareHouse.READY) 
都需要
Thread.sleep


不然while(true)一直循环,我也不知道为什么~
1 楼 new妞宁 2013-04-26  

相关推荐

    大数据与云计算培训学习资料 Fourinone实现分布式计算 共3页.pdf

    大数据与云计算培训学习资料 Fourinone实现分布式计算 共3页.pdf

    Fourinone分布式并行计算四合一框架

     开发包里自带了一系列傻瓜上手demo,包括分布式计算、统一配置管理、集群管理、分布式锁、分布式缓存、MQ等方面, 每个demo均控制在少许行代码内,但是涵盖了Fourinone主要的功能,方便大家快速理解并掌握。...

    Fourinone分布式计算框架

    FourInOne(中文名字“四不像”)是一个四合一分布式计算框架,在写这个...开发包里自带了一系列傻瓜上手demo,包括分布式计算、统一配置管理、集群管理、分布式锁、分布式缓存、MQ等方面帮助掌握fourinone的全部功能

    Fourinone四合一分布式计算框架整体介绍

    NULL 博文链接:https://fourinone.iteye.com/blog/1163255

    分布式计算的fourinone四合一框架设计

    开发者根据自己的需求可以基于Fourinone自己去扩充这些功能,包括mq集群,通过一个独立的domain/node建立队列或者主题的key隐射,再仿照上面分布式缓存的智能依据key定位服务器的做法实现集群管理。

    fourinone-3.04.25

    开发包里自带了一系列傻瓜上手demo,包括分布式计算、统一配置管理、集群管理、分布式锁、分布式缓存、MQ等方面, 每个demo均控制在少许行代码内,但是涵盖了Fourinone主要的功能,方便大家快速理解并掌握。...

    Fourinone分布式计算框架性能、压力、容灾测试报告

    Fourinone在去年11月在淘宝内部通过了压测,上亿排序和wordcount等经典指标均优于hadoop,这是一份长达10多页的详细测试报告

    学习资料:淘宝分布式并行计算四合一框架Fourinone

    学习资料:淘宝分布式并行计算四合一框架Fourinone 内容:淘宝分布式并行计算四合一框架Fourinone详细介绍;源码分析及使用说明;Fourinone分布式计算框架性能、压力、容灾测试报告;框架压缩包 本示例把分配任务的...

    四合一分布式计算框架源代码

    淘宝Fourinone(中文名字“四不像”)是一个四合一分布式计算框架,在写这个框架之前,我对分布式计算进行了长时间的思考,也看了老外写的其他开源框架,当我们把复杂的hadoop当作一门学科学习时,似乎忘记了我们想...

    高级java笔试题-fourinone:四合一分布式计算框架

    于是我将自己对分布式的理解融入到这个框架中,考虑到底层实现技术的相似性,我将Hadoop,Zookeeper,MQ,分布式缓存四大主要的分布式计算功能合为一个框架内,对复杂的分布式计算应用进行了大量简化和归纳。...

    淘宝分布式并行计算四合一框架Fourinone

    淘宝分布式并行计算四合一框架Fourinone 这个是介绍淘宝的分布式应用框架。

    fourinone分布式协调设计解析

    NULL 博文链接:https://fourinone.iteye.com/blog/1717603

    分布式计算互相sayhello

    NULL 博文链接:https://fourinone.iteye.com/blog/1569747

    fourinone配置文件

    fourinone号称了集成了hadoop,zk,memcache,mq于一身的四不像超级神器,致力于分布式应用。别的我不懂,今儿聊一下fourinone中的分布式缓存以及分布式文件系统,说到分布式,不得不用到网络通讯,不得不提及RPC,...

    淘宝分布式框架fourinone介绍.pptx

    淘宝分布式框架fourinone介绍.pptx

    大型分布式架构设计框架fourinone3.04.25

    本源码包含分布式技术的主要应用,分别介绍分布式并行计算的基本概念、分布式协调、分布式缓存、消息队列、分布式文件系统、分布式作业调度平台等,是构建大型分布式网站架构与设计的重要参照和选择。本压缩包包含...

    java简易版开心农场源码-fourinone_tmp:Fourinone_tmp

    于是我将自己对分布式的理解融入到这个框架中,考虑到底层实现技术的相似性,我将Hadoop,Zookeeper,MQ,分布式缓存四大主要的分布式计算功能合为一个框架内,对复杂的分布式计算应用进行了大量简化和归纳。...

    云计算系列资料

    对于一个分布式计算的应用,如果不需要自动部署,将工头工人程序文件分别部署到相应机器运行即可,不需要过多配置。 fourinone2.0可以支持自动化class和jar包部署,class和jar包只需放在工头机器上, 各工人机器会自动...

Global site tag (gtag.js) - Google Analytics