Apollo实现cron语句的热配置

来源:腾讯云 2023-03-26 01:06:26

GitHub项目地址


(资料图)

Gitee项目地址

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

Apollo 与 properties 配置文件的功能相同,都可以设置参数。Apollo 的优点在于,可以实时修改参数的值,而不需要重启项目。

1 配置 Apollo

本地配置 Apollo 的方式参考:

2 添加 Apollo 参数

在Apollo中添加参数:

param.cron_test1=0/5 * * * * ?param.cron_test2=0/5 * * * * ?

要实现 Apollo 对定时任务 cron 语句的热配置,需要使用ScheduledTaskRegistrar

具体方式如下:

@Override    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {        Runnable runnable  = () -> {            System.out.println("cron_test:" + cron_test);        };        Trigger trigger  = triggerContext -> {            CronTrigger cronTrigger = new CronTrigger(cron_test);            return cronTrigger.nextExecutionTime(triggerContext);        };        taskRegistrar.addTriggerTask(runnable , trigger );    }    @Override    public int getOrder() {        return 0;    }

完整项目地址:

GitHub地址:https://github.com/Snowstorm0/learn-apollo-cron

Gitee地址:https://gitee.com/Snowstorm0/learn-apollo-cron

在运行项目之前需要修改 resource/application.properties 中 apollo.meta 的值,将 localhost 替换为 apollo 的地址,端口号为 Eureka 的端口号(默认为8080)。

运行该项目,可以看到输出:

cron_test1:0/5 * * * * ?current_time1:10:53:13cron_test2:0/5 * * * * ?current_time2:10:53:13

在 Apollo 中将 cron 语句改为 0/10 * * * * ?,不需要重启,即可看到项目的输出变为:

cron_test1:0/10 * * * * ?current_time2:10:54:05cron_test2:0/10 * * * * ?current_time1:10:54:05
上一篇:绿野草铺茵 空山雪积银写的是什么景_绿野草铺茵空山雪积银写的是什么景 下一篇:最后一页
精彩推荐

Apollo实现cron语句的热配置

2023-03-26

绿野草铺茵 空山雪积银写的是什么景_绿野草铺茵空山雪积银写的是什么景

2023-03-25

世界今日讯!仅有5款车型!中型MPV舒适度排行榜:艾力绅第1,风行菱智倒数第1

2023-03-25

英国有哪些著名景点 精彩看点

2023-03-25

新消息丨彩钢瓦厚度国家标准(彩钢瓦厚度规格表)

2023-03-25

焦点滚动:【定时调度】- 01 quartz的基础你真的了解吗

2023-03-25

工作性质是什么意思_工作性质介绍

2023-03-25

全球报道:电子版个人简历如何上传照片

2023-03-25

传奇单机登录器如何生成_传奇单机登录器

2023-03-25

台风是怎样形成的?是从哪来的?_台风是怎样形成的-今日观点

2023-03-25

70万跌到23万!开10年都是0故障率,档次碾压凯美瑞,却没人要 焦点快播

2023-03-25

尚德机构Q4净利润同比增长20% 预计Q1营收同比降低超10%_环球观热点

2023-03-24

韩国举办过几次奥运会

2023-03-24

焦点!不知火舞在各个游戏中的站姿,SNK是懂男性玩家的

2023-03-24

环球消息!关于追星的反面例子_追星的好处的例子

2023-03-24

湖南金融中心金融科技应用场景合作大会3月28日举行

2023-03-24

世界微资讯!泰康人寿与北京大学经济学院签约战略合作伙伴

2023-03-24

日本共同社:又一日本制造业巨头倒下 东芝被JIP以2万亿日元收购

2023-03-24

汇总|北京多区发布扫“码”购药定点药店名单!附流程

2023-03-24

拼多多800bug提现技巧(拼多多800的破解办法)|世界微动态

2023-03-24
相关推荐

Apollo实现cron语句的热配置

2023-03-26

绿野草铺茵 空山雪积银写的是什么景_绿野草铺茵空山雪积银写的是什么景

2023-03-25

世界今日讯!仅有5款车型!中型MPV舒适度排行榜:艾力绅第1,风行菱智倒数第1

2023-03-25

英国有哪些著名景点 精彩看点

2023-03-25

新消息丨彩钢瓦厚度国家标准(彩钢瓦厚度规格表)

2023-03-25

焦点滚动:【定时调度】- 01 quartz的基础你真的了解吗

2023-03-25

工作性质是什么意思_工作性质介绍

2023-03-25

全球报道:电子版个人简历如何上传照片

2023-03-25

传奇单机登录器如何生成_传奇单机登录器

2023-03-25

台风是怎样形成的?是从哪来的?_台风是怎样形成的-今日观点

2023-03-25