首页 资讯 > > 正文

Apollo实现cron语句的热配置 前沿热点

2023-03-25 23:11:48 来源:腾讯云 分享到:

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

关键词:

x 广告

Apollo实现cron语句的热配置 前沿热点

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且

乐平县属于江西哪个市 天天时讯

乐平县属于江西省辖县级市,由景德镇市代管。乐平县位于江西省东北部,地处鄱阳湖盆地边缘与赣北丘陵接界处,跨乐安河中游,乐平属亚热带湿润

焦点快报!2023昆山养老保险缴费标准一览 居民养老保险缴费档次有几个?

2023昆山养老保险缴费标准一览居民养老保险缴费档次有几个?社保网小编整理如下:昆山居民养老保险线上线下皆可缴费参保,2023年缴费时间暂未

sf999官方传奇发布网_sf99私服发布网

1、你可以到hj123,sf99等等网站找你想要的私服76的很给力复古。2、我的回答希望对你有帮助天裂的好像没有了最近我

用什么方法可以中和室内84的味道?

如果是房间里有84消毒水的味道,可以直接把房间窗户打开通风,然后喷点空气清新剂或者是花露水。如果是手上有消毒水味道,可以先用冲洗下手,

x 广告

Copyright   2015-2023 非洲地质网版权所有  备案号:沪ICP备2022005074号-8   联系邮箱:58 55 97 3@qq.com