微型 java 分布式离线计算框架 tinympi4j

MIT
Java
跨平台
2017-04-04
Voyager_1

tinympi4j 是一款微型的 java 分布式离线计算框架, 实现原理如图:

特性

  • 简单直观, 没有任何学习难度

  • slave支持多个任务并发/并行执行

  • 使用HTTP协议通信

  • 场景: 找素数/grep/wordcount/超大文件或大量小文件处理

  • 不支持复杂数据类型

  • 没有进度监控,健康监控,无容错功能

例子: 用两台服务器分布式计算找出10000以内的素数

public static void main(String[] args) {
	
		//启动master上的tomcat
		final int masterport = 8086;
		final String masterurl = "http://192.168.1.100:" + masterport;
		TomcatTool.startMasterTomcat(masterport);
	
		//创建任务
		final BigTask<Integer> bigtask = BigTask.create(masterurl);
	
		//添加任务到两台计算节点, 请确保计算节点上的 tinympi4j-slave 已启动
		//关于计算节点: https://github.com/binaryer/tinympi4j-slave
		bigtask.addTask2Slave("http://192.168.1.101:1234", PrimeSplitedtask.class, new Integer[] { 2, 5000 });
		bigtask.addTask2Slave("http://192.168.1.102:1234", PrimeSplitedtask.class, new Integer[] { 5001, 10000 });
	
		//等待所有节点执行完毕
		final Collection<Integer> resultset = bigtask.executeAndWait();
			
		//打印结果
		for (int n : resultset){
			//System.out.println(n);
		}
	}
加载中

评论(3)

M
Mrou
不错
banzhuande
banzhuande
从中学到了些东西,不错
V
Voyager_1 软件作者
A_NOOB
A_NOOB
厉害
V
Voyager_1 软件作者
#tinympi4j# 微型java分布式离线计算框架, 几行代码就可实现分布式计算
V
Voyager_1 软件作者
最近复习java多线程,顺便写了个很实用的分布式计算小框架 #tinympi4j#

暂无资讯

暂无问答

暂无博客

返回顶部
顶部