elastic job (一) elastic-job-lite----SimpleJob

本文介绍了Elastic-Job Lite的基本概念和功能,包括分布式调度、弹性扩缩容等。通过搭建运维平台并创建SimpleJob任务,展示了如何实现任务分片并行执行。文中还详细说明了如何在运维平台上注册、管理和修改任务配置,以及Elastic-Job Lite与Zookeeper的配合使用。
摘要由CSDN通过智能技术生成

elastic-job分为elastic-job-lite 和elastic-job-cloud两部分,笔者最近打算再深度学习一下elastic-job,看了下版本升级到2.1.5了,我们就按照这个版本来学习elastic-job。
文档官网:http://dangdangdotcom.github.io/elastic-job/elastic-job-lite/01-start/quick-start/

首先我们要了解一下什么是任务调度,调度就是将一个任务套上一个时间,让该任务可以在时间规律上去循环执行。一般的技术quartz、spring task、java.util.Timer,这几种如果在单一机器上跑其实问题不大,但是如果一旦应用于集群环境做分布式部署,就会带来一个致命的问题,那就是重复执行,当然解决方案有,但是必须依赖数据库,将任务执行状态持久化下来。所以当当就把quartz和zookeeper结合起来达到分布式调度,并且添加其他功能,形成了elastic-job。
功能列表:
分布式调度协调
弹性扩容缩容
失效转移
错过执行作业重触发
作业分片一致性,保证同一分片在分布式环境中仅一个执行实例
自诊断并修复分布式不稳定造成的问题
支持并行调度
支持作业生命周期操作
丰富的作业类型
Spring整合以及命名空间提供
运维平台
下面我们来学习一下elastic-job-lite
首先我们可以先将运维平台搭建起来:
1、https://github.com/dangdangdotcom/elastic-job
下载源码
这里写图片描述
找到elastic-job-lite 下面的elastic-job-lite-console,然后用mvn 打包。
最终得到elastic-job-lite-console-2.1.5.tar.gz。保存下来上传到linux下,并且解压,在bin文件夹下执行./start.sh (-p 可以指定端口号)
启动成功访问 地址:端口号
这里写图片描述
能访问到这个页面就算搭建成功了。
(elastic-job 是依赖zookeeper来做协调的,所以还需要有zookeeper环境,搭建很简单,我就不贴出来)
现在开始编写任务代码:
job类型分为 SimpleJob 简单任务、Dataflow类型作业、Script类型作业
我们先来最简单的SimpleJob
首先将依赖的包引入进来:

 <dependency>
      <groupId>com.dangdang</groupId>
      
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值