第一章 - 分布式定时任务框架ElasticJob之JavaApi整合Simple作业


前言

分布式定时任务框架ElasticJob是当当网已经开源的框架,已经用于很多中大型企业用于分布式定时任务的场景开发之中,ElasticJob具有支持分布式、集群、弹性扩容等优点,它具有的这些特点在于它具有分片的功能,目前仅支持zookeeper注册中心。本章节介绍ElasticJob框架中最基本也是使用最广的一种作业类型SimpleJob整合JavaApi来实现基本的定时任务。

一、 开发环境准备

1.Eclipse/IDEA
2.zookeeper
3.JDK1.8
4.maven3.6.3

二、使用步骤

1.安装zookeeper

点击下载zookeeper进入下载页面,选择第一项下载
在这里插入图片描述
下载完成后,解压到D盘根目录。进入config目录
在这里插入图片描述
将zoo_sample.cfg文件复制一份重命名为zoo.cfg
在这里插入图片描述
单机版暂时不用过多的配置,然后进入bin目录下,双击zkServer.cmd运行zookeeper.
在这里插入图片描述
看到这样的效果就可以了
在这里插入图片描述

2.创建maven工程,引入ElasticJob依赖

在这里插入图片描述
引入ElasticJob依赖,

<dependency>
    <groupId>com.dangdang</groupId>
    <artifactId>elastic-job-lite-core</artifactId>
    <version>2.1.5</version>
</dependency>

3.编写代码

在App.java中编写simpleJob作业配置方法:

public static LiteJobConfiguration configuration() {
	
	//第一步job核心配置
	JobCoreConfiguration jcc = JobCoreConfiguration
			.newBuilder("mySimpleJob", "0/2 * * * * ?", 2)
			.build();
	
	//第二步job类型配置
	JobTypeConfiguration jtc = new SimpleJobConfiguration(jcc, 
			MySimpleJob.class.getCanonicalName());
	
	//第三步job根的配置
	LiteJobConfiguration ljc = LiteJobConfiguration.newBuilder(
			jtc
					)
			.overwrite(true)
			.build();
	return ljc;
}

zookeeper注册中心:

public static CoordinatorRegistryCenter zkCenter() {
	ZookeeperConfiguration zc = new ZookeeperConfiguration("localhost:2181"
			, "java-simple-job");
	
	CoordinatorRegistryCenter crc = new ZookeeperRegistryCenter(zc);
	//注册中心初始化
	crc.init();
	return crc;
}

将作业注册到JobSchedule:

new JobScheduler(zkCenter(), configuration()).init();

simpleJob作业:

public class MySimpleJob implements SimpleJob{

	@Override
	public void execute(ShardingContext shardingContext) {
		// TODO Auto-generated method stub
		LocalTime localTime = LocalTime.now();
		System.out.println(localTime+"我是分片项:"+shardingContext.getShardingItem()+",总分片项:"+shardingContext.getShardingTotalCount());
	}

}

总结

本章介绍了ElasticJob中最基本的作业SimpleJob的基本使用,下章节介绍流式作业DataflowJob的基本使用。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿坤...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值