原文:http://blog.csdn.net/qq_18675693/article/details/53337941
微服务:spring-cloud-archaius 起步
* 引入项目中*
<dependency>
<groupId>com.netflix.archaius</groupId>
<artifactId>archaius-core</artifactId>
<version>0.6.0</version>
</dependency>
- 1
- 2
- 3
- 4
- 5
使用本地配置文件作为配置源
- 默认的,Archaius将查找classpath下名为
config.properties
文件并读取,这个配置文件可以使包含在一个jar包的根路径下。 - 另外,你可以使用属性
archaius.configurationSource.additionalUrls
来包含url形式的文件,多个文件用逗号分割。
可以使用下面的API在程序中得到你需要的属性
// create a property whose value is type long and use 1000 as the default
// if the property is not defined
DynamicLongProperty timeToWait =
DynamicPropertyFactory.getInstance().getLongProperty("lock.waitTime", 1000);
// ...
ReentrantLock lock = ...;
// ...
lock.tryLock(timeToWait.get(), TimeUnit.MILLISECONDS); // timeToWait.get() returns up-to-date value of the property
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
默认的:Archaius会每一分钟去重新加载下属性配置
注意:配置多属性文件时的属性覆盖,最后读到的属性会覆盖前面相同的属性
列出我们可以修改的一些系统属性
Operation | HTTP action | Notes |
archaius.configurationSource.defaultFileName | 指定Archaius默认加载的配置源属性文件名,默认:classpath:config.properties | config.properties |
archaius.fixedDelayPollingScheduler.initialDelayMills | 延迟加载,默认30秒 | 30000 |
archaius.fixedDelayPollingScheduler.delayMills | 两次属性读取时间间隔,默认1分钟 | 60000 |
高级使用:自定义configuration source和polling scheduler,即自己设计动态属性配置方案。