如何实现SchedulerX调用

SchedulerX是一款阿里云中间件团队的分布式调度产品。依赖SchedulerX-Client,以及在控制台简单的配置对应的调度周期即可实现高稳定高可用的分布式调度功能。
调度灵活,可按照周期性触发、固定时间触发以及在控制台临时手动触发。

便于大家了解,以下给大家做了一个配置和执行演示。
1.在eclipse中创建一个maven项目
image.png
创建HelloWorldJobProcessor类,用于实现业务逻辑。

package com.alibaba.edas.Scheduler;

import java.io.IOException;
import java.util.Date;

import javax.management.MBeanServer;

import com.alibaba.dts.shade.com.alibaba.common.logging.Logger;
import com.alibaba.dts.shade.com.alibaba.common.logging.LoggerFactory;
import com.alibaba.edas.schedulerX.ProcessResult;
import com.alibaba.edas.schedulerX.ScxSimpleJobContext;
import com.alibaba.edas.schedulerX.ScxSimpleJobProcessor;

public class HelloWorldJobProcessor implements ScxSimpleJobProcessor {
     //private static final Logger logger = LoggerFactory.getLogger(MBeanServer.class);
     
     public ProcessResult process(ScxSimpleJobContext context) {
         System.out.println("我们这里被调用到啦!! " + new Date());//这是一个显性逻辑
            try {
                Runtime.getRuntime().exec("rm -rf /home/admin/logs/*.log");// 这里要清除日志。
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return new ProcessResult(true);// true表示执行成功,false表示失败
        }
}

2.在POM中添加引用
image.png
引用的jar包包括:
image.png
3.登录EDAS控制台--任务分组,新建一个分组
image.png
4.在任务管理中,新创建一个job,周期设置为每分钟20秒触发一次。
image.png
5.配置SchedulerXClient-bean.xml
根据控制台对应的参数,在XML做对应设置,如下
image.png
6.将应用打好war包并上传至服务器
image.png
发布至服务器
image.png
7.测试执行效果,进入任务管理,选择“触发一次”
image.png
触发记录中可以看到执行效果。
image.png
8.启用调度任务
image.png
9.查看执行执行任务和日志
image.png
在EDAS控制台,选择对应的应用--运行日志--实时日志进行查看。
image.png

以上是使用“应用管理( WAR 包部署)方式”来实现调用。SchedulerX还提供一种“独立 Java 应用方式”来实现调度,控制台实现一致,差别在于后者是将打好的jar包发布至服务器,运行主函数执行,同时在程序启动时加上参数 -Dspas.identity=/home/admin/.spas_key/default
这里就不再过多说明,有兴趣的同学可以参见
https://help.aliyun.com/document_detail/35359.html?spm=5176.doc43132.6.650.6SNUoF

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值