Apollo实现cron语句的热配置
配置 实现 语句 Cron Apollo
2023-06-13 09:17:41 时间
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:13
cron_test2:0/5 * * * * ?
current_time2:10:53:13
在 Apollo 中将 cron 语句改为 0/10 * * * * ?
,不需要重启,即可看到项目的输出变为:
cron_test1:0/10 * * * * ?
current_time2:10:54:05
cron_test2:0/10 * * * * ?
current_time1:10:54:05
相关文章
- 用Nacos实现”配置中心”
- idea添加tomcat插件_tomcat配置idea
- EasyCVR视频融合平台HLS播放协议配置的细节优化
- 高通msm8916 LK阶段配置使用i2c5
- Apollo实现cron语句的热配置
- Spring Cloud Gateway环境搭建和配置(二)
- Spring Cloud Security配置JWT和OAuth2的集成实现单点登录-示例
- CentOS7连接XShell与网络配置的方法
- PLSQL连接Oracle 数据库配置详解数据库
- Linux网络中浮动IP配置指南(linux浮动ip配置)
- Linux网络配置实训:轻松掌握技能(linux网络配置实训)
- MySQL Variables have_statement_timeout 数据库 参数变量解释及正确配置使用
- Linux GRE配置实践指南(linuxgre配置)
- 实现安全保护:Linux系统配置IPSec(linux配置ipsec)
- Linux自动启动配置:轻松实现自启动(linux自启动配置文件)
- 实现Java程序与MySQL的无缝连接:配置指南(javamysql配置)
- 数据库快速配置Linux环境下JDBC连接数据库(linuxjdbc连接)
- 妙用SQL Server 配置器实现数据库管理(sqlserver配置器)
- MySQL安装与配置:实现快速上手(mysql 安装与配置)
- 深入理解MySQL配置信息查看(mysql配置查看)
- Linux系统轻松实现自动配置IP(linux自动配置ip)
- MySQL 数据库实现一主二从架构的配置方法(mysql 一主二从)
- 脚本一键启动Redis借助bat脚本实现快速配置(启动redis的bat)
- 配置Oracle实现双监听模式(oracle两个监听、)
- Redis配置指南实现项目最优化(redis配置项目)
- Redis实现主从服务配置(redis配置主从服务)
- 使用Redis实现自动生成序列号的配置(redis自增序列的配置)
- PHP正确配置mysql(apache环境)
- Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置
- LNMP服务器环境配置(linux+nginx+mysql+php)