Spring项目配置执行器,调用xxl-job调度中心

工作中使用到业务场景,实时接入大量增量数据,使用xxl-job进行开发支持,现已完成,闲暇之时,分享一下成功,不多言,直接上步骤(个人手写,吸取所有建议)

注:以maven项目为例

配置步骤如下:

1. 配置xxl-job中央仓库



    com.xuxueli
    xxl-job-core
    ${最新稳定版本}

2. 项目中执行器配置,项目引入xxl-job-executor.properties

### xxl-job admin address list:调度中心部署跟地址:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调"。
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin

### xxl-job executor address:执行器"AppName"和地址信息配置:AppName执行器心跳注册分组依据;地址信息用于"调度中心请求并触发任务"和"执行器注册"。执行器默认端口为9999,执行器IP默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用。单机部署多个执行器时,注意要配置不同执行器端口;
xxl.job.executor.appname=xxl-job-executor-sample
xxl.job.executor.ip=
xxl.job.executor.port=9999

### xxl-job, access token:执行器通讯TOKEN,非空时启用
xxl.job.accessToken=
    
### xxl-job log path:执行器运行日志文件存储的磁盘位置,需要对该路径拥有读写权限
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler/

### xxl-job log retention days:执行器Log文件定期清理功能,指定日志保存天数,日志文件过期自动删除。限制至少保持3天,否则功能不生效;选填
xxl.job.executor.logretentiondays=-1

3. 执行器组件配置 ,项目引入 applicationcontext-xxl-job.xml






    
    
    
    
    
    
    
    
    
    
    
    
    
    

至此,配置完成,项目已支持使用xxl-job调度中心

4. 测试,代码开发(以常用BEAN模式为例)

/**
 * 开发步骤:
 * 1、新建一个继承com.xxl.job.core.handler.IJobHandler的Java类;
 * 2、该类被Spring容器扫描为Bean实例,如加“@Component”注解;
 * 3、添加 “@JobHander(value="自定义jobhandler名称")”注解,注解的value值为自定义的JobHandler名称,该名称对应的是调度中心新建任务的JobHandler属性的值。
 * 4、执行日志:需要通过 "XxlJobLogger.log" 打印执行日志;
 *  
 */
@Component
@JobHandler(value = "demoJobHandler")
public class demoJobHandler extends IJobHandler{
   
    @Override
    public ReturnT execute(String params) throws Exception {
        System.out.println("Hello xxl-job");

         //日志使用,param为xxl-job任务配置参数,选填

        XxlJobLogger.log("执行任务"+param));
        return ReturnT.SUCCESS;
    
    } 
    
}

5. 调度中心配置 - 执行器管理

Spring项目配置执行器,调用xxl-job调度中心_第1张图片

6. 调度中心配置 - 任务管理

Spring项目配置执行器,调用xxl-job调度中心_第2张图片

以上全部配置完成

你可能感兴趣的:(spring+xxl-job)