GitHub项目地址
(相关资料图)
Gitee项目地址
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
Apollo 与 properties 配置文件的功能相同,都可以设置参数。Apollo 的优点在于,可以实时修改参数的值,而不需要重启项目。
本地配置 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
近日,云南省科学技术厅印发《科技支撑天然橡胶产业高质量发展实施方案》(以下简称《方案》),明确思路目标和重点任务,发挥科技创新支撑引
今年前10个月,云南货物贸易进出口2257 9亿元,同比增长9 2%。其中,出口778 2亿元,增长1 6%;进口1479 7亿元,增长13 6%。今年以来,云南
记者从内蒙古自治区水利厅获悉:11月30日,随着什四份子险工施工准备工程在呼和浩特市托克托县开工,总投资32 97亿元的重大水利工程黄河内
走进位于山东省兰陵县的山东运丰食品有限公司生产车间,工人们正赶制一批发往国外的毛豆订单。公司总经理宋宏伟说:毛豆经过筛选、清洗等工
中国经济网北京12月2日讯时创能源(688429 SH)今日收报13 97元,跌幅6 2
X 关闭
X 关闭