Openjob,分布式任务调度框架

本文从多方面介绍名为Openjob的基于Akka的分布式任务调度框架,希望能为读者提供全面的了解和参考。

微信搜索关注《Java学研大本营》

图片

1 什么是Openjob

Openjob是一种基于Akka的新分布式任务调度框架。支持多种cronjob、延迟任务和工作流,使用一致性分片算法,具备无限的水平扩展。

图片

2 特性

Openjob不仅支持基本的cronjob,还支持延迟任务、分布式计算和工作流。

2.1 Cronjob

Openjob支持Cronjob任务调度,具备以下特点:

  • 支持Unix Crontab表达式

  • 秒级别,执行周期小于60秒

  • 固定频率,以分钟为单位执行任务

图片

2.2 延迟任务

Openjob支持基于Redis的分布式高性能延迟任务,并提供丰富的报告和统计信息,这种延迟任务能够保证高效、可靠地执行。

2.3 分布式计算

Openjob支持分布式计算,可实现以下功能:

  • 独立执行:任务可在工作客户端上独立执行。

  • 广播执行:任务可在所有工作客户端上广播执行。

  • 映射执行:映射函数可以将大数据分发到多台机器上执行,类似于Hadoop map

  • MapReduce:MapReduce是Map的扩展。在所有Map子任务完成后,执行Reduce方法,可以在Reduce方法中处理任务执行的结果和数据。

  • 分片:类似于Elastic-Job模型,在管理上配置分片数,可以通过分片调度到不同的客户端,并支持多种语言。

图片

2.4 处理器

Openjob提供处理器功能,可通过函数或类执行任务,支持Java、Golang和PH语言。同时,还支持以下处理器类型:

  • HTTP:可用于定期请求HTTP。

  • Shell:可用于执行shell脚本。

2.5 可视化操作

Openjob提供可视化操作功能,包含以下内容:

  • 仪表板:提供丰富的任务统计和报告功能,方便用户对任务执行情况进行实时监控和分析。

  • 任务历史记录:记录任务执行的历史记录,方便用户查看任务的执行情况和结果。

  • 任务日志:提供完整的任务日志,并支持存储到H2、Mysql、Elasticsearch等多种数据库中,方便用户查询和分析任务执行的详细信息。

  • 任务运行栈:详细记录任务执行的栈信息,方便用户排查任务执行中的问题和错误。

图片

2.6 警报和权限

Openjob提供警报和权限管理功能,包括以下内容:

  • 提供任务事件监控警报、详细的警报历史记录,并支持微信、飞书和Webhook触发器通知。

  • 设计有命名空间,支持按按钮级别访问控制,方便用户对复杂项目进行管理和维护。

2.7 多种语言

Openjob支持多种语言和框架,包括以下内容:

  • Java和其框架:原生支持。

  • Go:支持使用go mod install命令来管理Go语言的依赖。

  • PHP:支持使用Golang代理以shell模式执行任务,同时支持Swoole框架的composer install命令。

  • Python支持使用Golang代理以shell模式执行任务,方便用户使用Python语言编写任务。

3 应用场景

Openjob非常适用于具有任务调度和延迟任务的业务场景,例如每天清理数据和生成报告。它还适用于轻量级计算,通过Map/MapReduce可以方便地进行大数据计算。对于复杂的任务流或工作流,Openjob也提供了相应的UI设计工具,方便用户进行可视化的流程设计和管理。因此,Openjob是一个功能强大、灵活性高的分布式任务调度框架,适用于各种规模和类型的业务场景。

推荐书单

IT BOOK 多得(点击查看5折活动书单)icon-default.png?t=N7T8https://u.jd.com/psx2y1M

《Java语言程序设计(第3版)》

“十二五”普通高等教育本科国家级规划教材,畅销Java程序设计教材,已经被几百所高校选为教材。

本书第1版于2005年出版。第2版于2010年出版,是普通高等教育“十一五”国家级规划教材。第3版入选“十二五”高等教育本科国家级规划教材。 本书在介绍Java语言的同时,更注重Java语言的知识体系,系统性地分析了Java核心机制与基本原理。全书分为核心基础篇与应用技术篇。在核心基础篇中, 论述了面向对象程序设计的基本概念、Java语言基础(包括运算符与表达式、程序流控制、数组)、Java面向对象特性、异常处理方法、基于Swing的图形化用 户界面构造方法、输入/输出、Applet概念与应用。应用技术篇介绍了开发Java的高级应用技术,包括多线程、网络编程、JDBC数据库连接、J2EE技术、功能驱 动的Java程序开发方法以及Java编程规范。书中还提供了大量实例。 本书具有系统性、知识性、实用性等特点,可以作为大专院校教材,也可作为Java编程爱好者的参考书。
京东安全icon-default.png?t=N7T8https://item.jd.com/11949337.html

图片

精彩回顾

如虎添翼,Java接入ChatGPT API

10个企业级软件架构设计模式

8个用于绘制软件架构图的画图工具

10个不可不知的Spring Boot注释方法

10个不能错过的IntelliJ IDEA插件

微信搜索关注《Java学研大本营》

访问【IT今日热榜】,发现每日技术热点

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值