1、概述

Netflix Archaius 是一个功能强大的配置管理库。它是一个可用于从许多不同来源收集配置属性的框架,提供对配置信息的快速及线程安全访问。

需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码 一零三八七七四六二六

除此之外,Archaius允许属性在运行时动态更改,使系统无需重新启动应用程序即可获得这些变化。

Netflix Archaius功能

众所周知,Spring Boot已经提供了管理外部化配置的工具,为什么还要设置不同的机制呢?

因为Archaius提供了一些其他任何配置框架都没有考虑过的方便有趣的功能。其中的一些关键点是:

动态和类型属性

在属性改变时调用的回调机制

动态配置源(如URL,JDBC和Amazon DynamoDB)的实现

Spring Boot Actuator或JConsole可以访问的JMX MBean,用于检查和操作属性

动态属性验证

因此,Spring Cloud已经开发了一个库,可以轻松配置“Spring Environment Bridge”,以便Archaius可以从Spring Environment中读取属性。

用法

一旦我们添加了所需的依赖项,我们就能够访问框架管理的属性:

DynamicStringProperty propertyOneWithDynamic = DynamicPropertyFactory.getInstance()
.getStringProperty("springcloud.archaius.properties.one", "not found!");
String propertyCurrentValue = dynamicProperty.get();
复制代码

它是如何工作的?

首先,让我们试着理解大局。

Archaius是Apache的Commons Configuration库的扩展,添加了一些很好的功能,如动态源的轮询框架,具有高吞吐量和线程安全的实现。

然后 spring-cloud-netflix-archaius 库进入,合并所有不同的属性源,并使用这些源自动配置Archaius工具。

2、 Netflix Archaius库

它定义了一个复合配置,是可以从不同来源获得的各种配置的集合。

此外,其中一些配置源可以支持在运行时轮询更改。Archaius提供接口和一些预定义的实现来配置这些类型的源。

源集合是分层的,因此如果属性存在于多个配置中,则最终值将是最顶部插槽中的值。

最后, ConfigurationManager处理系统范围的配置和部署上下文。它可以安装最终的复合配置,或检索已安装的复合配置进行修改。

3、 Spring Cloud支持

Spring Cloud Archaius库的主要任务是将所有不同的配置源合并为 ConcurrentCompositeConfiguration,并使用ConfigurationManager进行安装 。

库定义源的优先顺序是:

上下文中定义的任何Apache公共配置AbstractConfiguration bean

Autowired Spring ConfigurableEnvironment中定义的所有源代码

默认的Archaius源,我们在上面的例子中看到过

Apache的SystemConfiguration和EnvironmentConfiguration 源

Spring Cloud库提供的另一个有用功能是定义一个Actuator Endpoint 来监控属性并与之交互。

使用Spring添加其他配置源

我们如何添加一个不同的配置源来由所描述的框架管理?我们如何管理优先级高于Spring环境中定义的动态属性?

为了简单起见,我们将看到一个示例,我们配置一个类似于默认config.properties的属性文件,但其优先级高于Spring环境和应用程序属性的其余部分:

@Configuration
public class ApplicationPropertiesConfigurations {@Beanpublic AbstractConfiguration addApplicationPropertiesSource() {PolledConfigurationSource source = new URLConfigurationSource("classpath:other-config.properties");return new DynamicConfiguration(source, new FixedDelayPollingScheduler());}
}
复制代码

java B2B2C 源码多租户电子商城系统

java B2B2C 源码多租户电子商城系统-Spring Cloud整合Netflix Archaius介绍相关推荐

  1. java B2B2C 源码多租户电子商城系统-Spring Cloud组件详解

    我们从整体上来看一下Spring Cloud各个组件如何来配套使用: 需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码 一零三八七七四六二六 从上图可以看出 ...

  2. java B2B2C 源码多租户电子商城系统-Spring Cloud组件详解...

    我们从整体上来看一下Spring Cloud各个组件如何来配套使用:  从上图可以看出Spring Cloud各个组件相互配合,合作支持了一套完整的微服务架构. 其中Eureka负责服务的注册与发现, ...

  3. java B2B2C springmvc mybatis多租户电子商城系统-Spring Cloud Feign

    1.什么是Feign? 愿意了解源码的朋友直接企鹅求求:二一四七七七五六三三 Feign 的英文表意为"假装,伪装,变形", 是一个http请求调用的轻量级框架,可以以Java接口 ...

  4. java B2B2C springmvc mybatis多租户电子商城系统-Spring Cloud Ribbon

    Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现. 通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST ...

  5. java B2B2C Springcloud仿淘宝电子商城系统-spring cloud 框架原理

    我们从整体来看一下Spring Cloud主要的组件,以及它的访问流程 需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码 一零三八七七四六二六 1.外部或者 ...

  6. java B2B2C 多级分销多租户电子商城系统-消息队列之 RabbitMQ

    什么叫消息队列 消息(Message)是指在应用间传送的数据.消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象.需要了解电子商务平台源码可加企鹅邱邱 一零三八七七四六二六 消息队 ...

  7. java B2B2C springmvc mybatis多租户电子商城系统(三):服务提供与调用

    上一篇文章我们介绍了eureka服务注册中心的搭建,这篇文章介绍一下如何使用eureka服务注册中心,搭建一个简单的服务端注册服务,客户端去调用服务使用的案例. 案例中有三个角色:服务注册中心.服务提 ...

  8. java B2B2C springmvc mybatis多租户电子商城系统(五):熔断监控Hystrix Dashboard和Turbine...

    Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数 ...

  9. (十五)java B2B2C 多级Springboot多租户电子商城系统 Springboot整合RabbitMQ

    Spring cloud b2b2c电子商务社交平台源码请加企鹅求求:一零三八七七四六二六.这篇文章带你了解怎么整合RabbitMQ服务器,并且通过它怎么去发送和接收消息.我将构建一个springbo ...

最新文章

  1. Elasticsearch索引生命周期管理方案
  2. 实现word在线预览 有php的写法 也有插件似
  3. 来自mooon的最简单的日志类CSimpleLogger
  4. 对Spring IOC的理解(转)
  5. Windows10家庭中文版没有本地策略选项完美解决方案
  6. 【C#桌面应用】第五节:制作简单的登录注册模拟窗口-注册部分的模拟
  7. 蓝桥杯 基础练习 高精度加法
  8. 初等数论中的欧拉公式
  9. linux 帐号 配置sftp_Linux 下sftp配置之密钥方式登录详解
  10. 【开发者笔记】利用ab命令对接口进行压力测试
  11. tt按键精灵从入门到精通完整版
  12. linux qq 提示错误,deepin-wine QQ崩溃,QQ遇到错误的暂时解决方法
  13. chromeos java安装_谷歌最新系统ChromeOS安装体验,酷!
  14. Ubuntu18.04 Deb 包安装方法
  15. 华为OD机试 - 完美走位(Python)
  16. 【渗透测试工具beef】XSS渗透测试工具beef如何安装使用?
  17. 同为IM社交产品中的王者,QQ与微信到底有什么区别
  18. 聪明好学的王强用计算机设计了,五年级语文下册期中试卷-(1)(1).doc
  19. idea 项目能运行,但是代码冒红-解决措施
  20. SSD:单目多目标检测器

热门文章

  1. Java并发(三)——线程池
  2. 机器学习实战(七)线性回归(Linear Regression)
  3. VSCode配置jupyter逐行语句运行python
  4. 短信接口与短信平台收费标准----速码云仅供参考
  5. 服务器进bios修改启动顺序,服务器进入bios设置u盘启动
  6. RuoYiConfig中加入自定义属性值获取不到解决办法?
  7. payload的使 常用xss_Sony某个深度子域上的XSS
  8. php获取当天 天气预报,PHP获取当天和72小时天气预报,并生成接口
  9. 什么是决定计算机内部寄存器,问题解答之 计算机中寄存器定义,分类
  10. 哈工大c语言作业系统,2015秋C语言程序设计