如何实现SchedulerX调用

简介: SchedulerX是一款阿里云中间件团队的分布式调度产品。依赖SchedulerX-Client,以及在控制台简单的配置对应的调度周期即可实现高稳定高可用的分布式调度功能。 调度灵活,可按照周期性触发、固定时间触发以及在控制台临时手动触发。 便于大家了解,以下给大家做了一个配置和执行演示。 1.在eclipse中创建一个maven项目 ![image.png](http://ata2

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

相关实践学习
微服务实战-服务注册中心 - Nacos
Nacos是阿里巴巴于2018年7月发布的一个开源项目,它是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 支持几乎所有主流类型的服务的发现、配置和管理: Kubernetes Service  gRPC & Dubbo RPC Service  Spring Cloud RESTful Service  
目录
相关文章
|
机器学习/深度学习 算法 Java
数论中的十个基本概念
数论中的十个基本概念
|
算法 Python
LightGBM高级教程:自动调参与超参数优化
LightGBM高级教程:自动调参与超参数优化【2月更文挑战第5天】
1876 2
|
2月前
|
存储 关系型数据库 Apache
Flink CDC 3.5 正式发布,新增 PostgreSQL Source 和 Fluss Sink 连接器
Apache Flink CDC 3.5 正式发布,支持万表同步性能优化、PostgreSQL 整库同步至 Apache Fluss 流存储,增强 MySQL、Paimon 等连接器稳定性,并修复 GTID 数据正确性等关键问题,提升实时 ETL 可靠性与易用性。
454 0
|
Java 开发工具 对象存储
Aliyun OSS Java SDK超时时间设置
Aliyun OSS Java SDK超时时间设置
17120 0
|
分布式计算 并行计算 数据库
Schedulerx2.0分布式计算原理&最佳实践
1. 前言 Schedulerx2.0的客户端提供分布式执行、多种任务类型、统一日志等框架,用户只要依赖schedulerx-worker这个jar包,通过schedulerx2.0提供的编程模型,简单几行代码就能实现一套高可靠可运维的分布式执行引擎。
27036 2
|
机器学习/深度学习 数据采集 自然语言处理
使用Python实现深度学习模型:智能社交媒体内容分析
使用Python实现深度学习模型:智能社交媒体内容分析
1050 69
|
SQL 监控 关系型数据库
使用SQL语句查询操作耗时的技巧与方法
在数据库管理和优化过程中,了解SQL查询操作的耗时是至关重要的
1758 0
|
7月前
|
开发框架 API 开发工具
HarmonyOS NEXT~鸿蒙系统与Uniapp跨平台开发实践指南
本书《HarmonyOS NEXT~鸿蒙系统与Uniapp跨平台开发实践指南》深入探讨了华为鸿蒙系统(HarmonyOS)与Uniapp框架的融合应用。书中首先介绍了鸿蒙系统的分布式架构特点及其原子化服务理念,随后详细讲解了Uniapp在鸿蒙环境下的适配方案,包括开发环境配置、特有配置项设置以及条件编译调用鸿蒙原生能力的方法。此外,还提供了界面适配策略、性能优化建议及调试发布流程,帮助开发者高效构建多端协同应用。最后展望了鸿蒙生态未来的发展方向,如ArkUI-X的深度集成和全新API能力的应用前景。
748 0
|
存储 设计模式 缓存
OpenFeign集成Ribbon负载均衡-过滤和选择服务核心实现
该文章主要介绍了如何在OpenFeign中集成Ribbon以实现负载均衡,并详细分析了Ribbon中服务选择和服务过滤的核心实现过程。文章还涉及了Ribbon中负载均衡器(ILoadBalancer)和负载均衡策略(IRule)的初始化方式。
OpenFeign集成Ribbon负载均衡-过滤和选择服务核心实现
|
存储 NoSQL 算法
Redis中的BigKey问题:排查与解决思路
Redis中的BigKey问题:排查与解决思路
823 0