原文链接
GitHub项目地址
Gitee项目地址
(资料图片)
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
Apollo 与 properties 配置文件的功能相同,都可以设置参数。Apollo 的优点在于,可以实时修改参数的值,而不需要重启项目。
本地配置 Apollo 的方式参考:
Apollo本地快速部署
在Apollo中添加参数:
param.cron_test1=0/5 * * * * ?param.cron_test2=0/5 * * * * ?
要实现 Apollo 对定时任务 cron 语句的热配置,需要使用ScheduledTaskRegistrar
。
具体方式如下:
@Overridepublic 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 );}@Overridepublic 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-28世界微资讯!夜店之王怎么赚钱快(夜店之王如何刷钱)
2023-03-28历时二十余载!59套个性化珍邮一次集齐,尽显华夏文化魅力!
2023-03-27云南女子被拐卖18年后公开求助具体详细内容是什么
2023-03-27ti2冠军之辉_ti2冠军
2023-03-27今日热讯:以鸡为主题的店名大全 有创意的鸡店名字
2023-03-27环球今亮点!蒲姓氏的历史来源_蒲姓
2023-03-27喜报!北京财贸职业学院师生在北京市第三届学生资助评选活动中获表彰
2023-03-27关于石榴的怎么吃好吃
2023-03-27养老金缴费基数怎么算?养老金怎么交?_全球热资讯
2023-03-27Apollo实现cron语句的热配置 全球观天下
2023-03-28世界微资讯!夜店之王怎么赚钱快(夜店之王如何刷钱)
2023-03-28历时二十余载!59套个性化珍邮一次集齐,尽显华夏文化魅力!
2023-03-27云南女子被拐卖18年后公开求助具体详细内容是什么
2023-03-27ti2冠军之辉_ti2冠军
2023-03-27今日热讯:以鸡为主题的店名大全 有创意的鸡店名字
2023-03-27环球今亮点!蒲姓氏的历史来源_蒲姓
2023-03-27喜报!北京财贸职业学院师生在北京市第三届学生资助评选活动中获表彰
2023-03-27关于石榴的怎么吃好吃
2023-03-27养老金缴费基数怎么算?养老金怎么交?_全球热资讯
2023-03-27Copyright 2015-2023 今日超市网版权所有 备案号:沪ICP备2023005074号-40 联系邮箱:5 85 59 73 @qq.com