随笔分类 -  elastic-job

elastic-job详解(五):自定义任务参数
摘要:在elastic-job详解(三):Job的手动触发功能一文中讲到了如何手动触发一个Job,但是我们手动触发的时候常常需要输入一些参数。举个栗子:我们有个日统计报表,每天凌晨统计一次,统计上一天的数据。但我们发现几天前的某一天的数据有问题,需要重跑统计。这就需要统计程序能执行指定某一天的数据。这个功 阅读全文
posted @ 2017-09-08 11:06 nick hao 阅读(8465) 评论(0) 推荐(1) 编辑
elastic-job详解(四):失效转移
摘要:elastic-job中最关键的特性之一就是失效转移。配置了失效转移之后,如果在任务执行过程中有一个执行实例挂了,那么之前被分配到这个实例的任务(或者分片)会在下次任务执行之前被重新分配到其他正常节点实例上执行。 简单的HA 当某一个任务实例节点宕机(离开与zookeeper的连接),会触发elastic-job主节点的重新分片逻辑。elastic-job启动任务节点以后生成的zookeepe... 阅读全文
posted @ 2017-06-23 07:50 nick hao 阅读(13788) 评论(1) 推荐(2) 编辑
elastic-job详解(三):Job的手动触发功能
摘要:elastic-job的任务都是使用quartz来触发的,quartz表达式一般都是定期执行。但有时候一些周期较长的任务,比如一天一次,几小时一次的任务,我们需要等待很久才能触发一次。如果我们需要测试一些功能,或者说重跑一些任务的话,手动触发任务功能就变得尤为重要,也是任务框架一般都必须要实现的特性 阅读全文
posted @ 2017-06-10 06:37 nick hao 阅读(18077) 评论(1) 推荐(0) 编辑
elastic-job详解(二):作业的调度
摘要:JobScheduler是elastic-job作业调度的关键类,也是起始类,在包com.dangdang.ddframe.job.lite.api下。调度任务的执行需要包含两大步骤:任务的配置和任务的注册。JobScheduler的构造函数除了任务配置和注册相关信息之外还有事件和监听。后两者是el 阅读全文
posted @ 2017-06-03 16:53 nick hao 阅读(19395) 评论(0) 推荐(0) 编辑
elastic-job详解(一):数据分片
摘要:数据分片的目的在于把一个任务分散到不同的机器上运行,既可以解决单机计算能力上限的问题,也能降低部分任务失败对整体系统的影响。elastic-job并不直接提供数据处理的功能,框架只会将分片项分配至各个运行中的作业服务器(其实是Job实例,部署在一台机器上的多个Job实例也能分片),开发者需要自行处理分片项与真实数据的对应关系。框架也预置了一些分片策略:平均分配算法策略,作业名哈希值奇偶数算法策略,... 阅读全文
posted @ 2017-05-29 23:48 nick hao 阅读(42885) 评论(0) 推荐(1) 编辑