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

导读:本篇文章讲解 第一章 – 分布式定时任务框架ElasticJob之JavaApi整合Simple作业,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com


前言

分布式定时任务框架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的基本使用。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/71716.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!