Java 分布式作业流调度框架 Hydra-Io

Apache
Java
跨平台
2017-07-03
Norman.Dai

Java 分布式作业流调度框架 Hydra-Io

Hydra 是由 Java 实现的作业流调度框架,它可以支持复杂作业流的调度。

主要有以下特点:

1. 支持分布式作业分片

2. 支持本地并发执行

3. 支持复杂作业树(作业流) 

4. 实现业务代码和框架代码的解耦

5. 内部实现分布式调度,无需zookeeper等第三方分布式组件

6. 抛弃传统的cron表达,采用简单易懂的作业配置

note: 目前Hydra-Io 处于测试版本,暂没有在生产环境下运行的先例

计划:

在1.0 版本中 将支持一下特性

1. 同步支持zookeeper 、Redis 作为分布式组件

2. 实现基于XML的作业配置

3. 支持spring

测试版体验:

1.定义作业 testInvokeTask

@Task("testInvokeTask")
public class TestInvokeTask {



   @Executor("executorA")
   @Expression(strategy = ExpressionStrategyEnum.TIMING, measure = ExpressionMeasureEnum.MINUTE,factor = "15")
   @Distributed(strategy = DistributedStrategyEnum.SHARDING,number = 2)
   public String executorA(EnvironmentParams context){
      String jobName = context.getJobName();
      int invokeIndex = context.getInvokeIndex();
      String str = jobName + " - " + invokeIndex + " running at " + new Date();
      System.out.println(str);
      return str;
   }


   @Join("testInvokeTask@executorA")
   @Executor("executorB")
   public String executorB(EnvironmentParams context, String values){

      String jobName = context.getJobName();
      int invokeIndex = context.getInvokeIndex();
      String str = jobName + " - " + invokeIndex + " running at " + new Date() + " param is:[" + values + " ]" ;
      System.out.println(str);
      return jobName;
   }

   @Join("testInvokeTask@executorB")
   @Executor("executorC")
   public String executorC(EnvironmentParams context, String values){
      String jobName = context.getJobName();
      int invokeIndex = context.getInvokeIndex();
      String str = jobName + " - " + invokeIndex + " running at " + new Date() + " param is:[" + values + " ]" ;
      System.out.println(str);
      return jobName;
   }
   }

注解说明:


执行作业:

public class Main {

    public static void main(String[] strings){
        BatchSystem system = AnnotationBatchSystem.getInstance().setScanPackage("com.xxxx.xxxx.test");
        system.start();
    }

}
加载中

评论(1)

老衲大海
国产开源作业调度工具TASKCTL已经开源,可关注:https://www.oschina.net/p/taskctl 了解更多。

暂无资讯

暂无问答

使用 hydra 破解路由器密码

hydra 是个网络协议暴力破解工具 ,。。支持很多协议 下面说下怎么使用其破解路由器密码 [root@fedora ~]# hydra Hydra v7.3 (c)2012 by van Hauser/THC & David Maciejak - for legal purpo...

2012/11/25 18:38
4.1K
0
Emacs简化按键利器hydra

首发blog链接 作者 [Hick](http://blog.hickwu.com/) 如有更新, 我会在首发链接修改. 时不时有人冒出来说有 Emacs 教徒因为小拇指按 ctrl 太多导致 XXX 病, 不要用 Emacs! 有 XXX 病的人估计...

2015/03/23 11:19
72
0
Linux下的暴力密码在线破解工具Hydra详解

一、简介 hydra是著名黑客组织thc的一款开源的暴力密码破解工具,可以在线破解多种密码。官网:http://www.thc.org/thc-hydra,可支持AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Fire...

2016/09/20 18:12
80
0
HYDRAstor:可扩展的二级存储

原文:HYDRAstor: a Scalable Secondary Storage. HYDRAstor(官网)是NEC推出的二级存储系统,先后有多篇关于HYDRAstor的论文发表在FAST(包括后来9livesdata发表的论文)。HYDRAstor是一个完...

2013/10/09 20:55
163
0
使用 hydra 破解网络登录密码

这里说的是 post 类型的。。 [root@fedora ~]# hydra -f -l sincoder -P /root/1.txt -V -s 9900 192.168.7.122 http-post-form "/admin/index.php?action=login:user=^USER^&pw=^PASS^:<tit...

2012/11/25 19:26
2.3K
0
kali下的密码破解(一)

Hydra,DirBuster,webslayer,john the ripper(johnny 是其图形化版本)

2016/04/08 11:37
96
1
小小的渗透

扫下 mssql 弱口令 先找点主机 使用 linux 的 s 扫描器 http://hi.baidu.com/sincoder/item/c5186dcda7aaee71f6c95d2a 速度超快 。。。 s xxx.xx.xxx.xx/16 1433 /save 很快扫完了。。 打开R...

2012/11/26 15:00
66
0
MPICH2(r8733)的错误容忍

以下为mpich2-trunk-r8733中的README第七节“ 错误容忍”的翻译 ================== MPICH2能够一定程度地容忍进程失效,并支持checkpointing/restart. 容忍进程失效 ----------------------...

2011/07/01 21:11
122
0
3306 scan script

#!/bin/sh if [ $# != 1 ] then echo Usage:$0 \(ip range\) exit 1 fi rm Result.txt -f s $1 3306 /save cat Result.txt | awk '{print $1}' | uniq > host if [[ `wc -l ho...

2013/05/19 15:00
32
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部