127 lines
4.1 KiB
Java
127 lines
4.1 KiB
Java
package com.example.snailjob.handler;
|
|
|
|
import com.aizuda.snailjob.client.job.core.enums.AllocationAlgorithmEnum;
|
|
import com.aizuda.snailjob.client.job.core.enums.TriggerTypeEnum;
|
|
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
import com.aizuda.snailjob.common.core.enums.JobBlockStrategyEnum;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
@Component
|
|
public class TestAddJobHandler {
|
|
|
|
/**
|
|
* 新增集群模式的任务
|
|
*
|
|
* @param jobName 任务名称
|
|
* @return 任务id
|
|
*/
|
|
public Long addClusterJob(String jobName) {
|
|
return SnailJobOpenApi.addClusterJob()
|
|
.setRouteKey(AllocationAlgorithmEnum.RANDOM)
|
|
.setJobName(jobName)
|
|
.setExecutorInfo("testJobExecutor")
|
|
.setExecutorTimeout(30)
|
|
.setDescription("add")
|
|
.setBlockStrategy(JobBlockStrategyEnum.DISCARD)
|
|
.setMaxRetryTimes(1)
|
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
|
.setTriggerInterval(String.valueOf(60))
|
|
.addArgsStr("测试数据", 123)
|
|
.addArgsStr("addArg", "args")
|
|
.setRetryInterval(3)
|
|
.execute();
|
|
|
|
}
|
|
|
|
/**
|
|
* 新增集群模式的任务
|
|
*
|
|
* @param jobName 任务名称
|
|
* @return 任务id
|
|
*/
|
|
public Long addBroadcastJob(String jobName) {
|
|
return SnailJobOpenApi.addBroadcastJob()
|
|
.setJobName(jobName)
|
|
.setExecutorInfo("testJobExecutor")
|
|
.setExecutorTimeout(30)
|
|
.setDescription("add")
|
|
.setBlockStrategy(JobBlockStrategyEnum.DISCARD)
|
|
.setMaxRetryTimes(1)
|
|
.setTriggerType(TriggerTypeEnum.CRON)
|
|
.setTriggerInterval("afas")
|
|
.addArgsStr("测试数据", 123)
|
|
.addArgsStr("addArg", "args")
|
|
.setRetryInterval(3)
|
|
.execute();
|
|
|
|
}
|
|
|
|
/**
|
|
* 新增Sharding模式的任务
|
|
*
|
|
* @param jobName 任务名称
|
|
* @return 任务id
|
|
*/
|
|
public Long addShardingJob(String jobName) {
|
|
return SnailJobOpenApi.addShardingJob()
|
|
.setJobName(jobName)
|
|
.setExecutorInfo("testJobExecutor")
|
|
.setExecutorTimeout(30)
|
|
.setDescription("add")
|
|
.setBlockStrategy(JobBlockStrategyEnum.DISCARD)
|
|
.setMaxRetryTimes(1)
|
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
|
.setTriggerInterval(60)
|
|
.addShardingArgs("分片1", "分片2", "分片3")
|
|
.setParallelNum(1)
|
|
.setRetryInterval(3)
|
|
.execute();
|
|
|
|
}
|
|
|
|
/**
|
|
* 新增MapReduce模式的任务
|
|
*
|
|
* @param jobName 任务名称
|
|
* @return 任务id
|
|
*/
|
|
public Long addMapJob(String jobName) {
|
|
return SnailJobOpenApi.addMapJob()
|
|
.setJobName(jobName)
|
|
.setExecutorInfo("testJobExecutor")
|
|
.setExecutorTimeout(30)
|
|
.setDescription("add")
|
|
.setBlockStrategy(JobBlockStrategyEnum.DISCARD)
|
|
.setMaxRetryTimes(1)
|
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
|
.setTriggerInterval(String.valueOf(60))
|
|
.setParallelNum(3)
|
|
.setRetryInterval(3)
|
|
.execute();
|
|
|
|
}
|
|
|
|
/**
|
|
* 新增MapReduce模式的任务
|
|
*
|
|
* @param jobName 任务名称
|
|
* @return 任务id
|
|
*/
|
|
public Long addMapReduceJob(String jobName) {
|
|
return SnailJobOpenApi.addMapReduceJob()
|
|
.setJobName(jobName)
|
|
.setExecutorInfo("testJobExecutor")
|
|
.setExecutorTimeout(30)
|
|
.setDescription("add")
|
|
.setBlockStrategy(JobBlockStrategyEnum.DISCARD)
|
|
.setMaxRetryTimes(1)
|
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
|
.setTriggerInterval(String.valueOf(60))
|
|
.setParallelNum(3)
|
|
.setShardNum(2)
|
|
.setRetryInterval(3)
|
|
.execute();
|
|
|
|
}
|
|
}
|