同步操作将从 haiker/rtpt 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
在个人开发的个人软件和公司的项目中很多地方使用到了动态配置,例如:功能参数、搜索功能权重设置、抽佣比例等。
这些配置不同于平台的静态配置(数据连接池参数等)随时会随着业务的变化而改变,且此类参数大多数属于运营参数需要给运营人员开放修改权限。如果更改就涉及代码配置的更新服务的配置重新启动,如果此类动作过于频繁导致系统集群的不稳定性增加。
RTPT是作者本人一些工作中针对具体问题总结的解决方案, 本程序已经在线上运行,如果您发现软件中的BUG或者设计不合理的地方您可以直接提交 Issues 或者 邮件(wo@renzhen.la) 联系我.
动态配置分为客户端、配置管理中两部分。
客户端使用分为两种:
服务端:配置数据中心化管理, 数据保存支持:
无论是客户端单独使用还是配置管理中心化后期将支持更多的数据存储方案(etcd,zookeeper等)。
Maven:
<dependency>
<groupId>la.renzhen.basis.rtpt</groupId>
<artifactId>rtpt-client-starter</artifactId>
<version>1.0.2</version>
</dependency>
Gradle:
compile "la.renzhen.basis.rtpt:rtpt-client-starter:1.0.2"
@FluentConfiguration("demo")
public interface DemoConfig {
@Data
public class SubConfig {
String param3;
int param4;
}
@FluentConfiguration.DefaultValue("参数默认值")
String param1();
int param2();
@FluentConfiguration.DefaultValue("{\"param3\":\"参数三\"}")
SubConfig sub();
}
绑定类对应配置key说明:
方法 | 对应key |
---|---|
DemoConfig#param1() | [rtpt.prefix.]demo.param1 |
DemoConfig#param2() | [rtpt.prefix.]demo.param2 |
DemoConfig#sub#param3 | [rtpt.prefix.]demo.sub.param3 |
DemoConfig#sub#param4 | [rtpt.prefix.]demo.sub.param4 |
rptp.prefix 为客户端全局配置key前缀,详细查看客户端配置。
rtpt:
prefix: cfg
environment: master
redis:
address: 127.0.0.1:6379
folder: rtpt
database: 0
rtpt:
prefix: cfg
environment: master
consul:
address: 127.0.0.1:8500
folder: rtpt
使用center配置中心可以有两种方式:
第一种方式:未使用注册中心
rtpt:
prefix: cfg
environment: master
center:
address: http://localhost:7658
contextPath: /rtpt
第二种方式:使用注册中心
rtpt:
center:
discovery:
serviceId: "rptp-config-server"
enabled: true
详细介绍查看:RTTPProperties.java
Maven:
<dependency>
<groupId>la.renzhen.basis.rtpt</groupId>
<artifactId>rtpt-admin-server-starter</artifactId>
<version>1.2.0</version>
</dependency>
Gradle:
compile "la.renzhen.basis.rtpt:rtpt-admin-server-starter:1.0.0"
rtpt:
admin:
consul:
address: 127.0.0.1:8500
rtpt:
admin:
redis:
url: 127.0.0.1:6379
module: rtpt
rtpt:
admin:
disable-web-ui: false
context-path: /rtpt
jdbc:
url: jdbc:mysql://127.0.0.1:3306/test
username: haiker
password: haiker
注:等多配置查看实例:example
** 2018-06-20 V1.0.2 **
** 2018-06-06 V1.0.0 **
第一版开源版本发布
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。