`

Spring Cloud之Config

阅读更多

  Spring Cloud中通过子项目spring-cloud-config实现了基于git、svn等的分布式配置管理,为微服务的构建提供便利条件。

 http访问规则

/{application}/{profile}[/{label}]
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties
/{label}/{application}-{profile}.properties

application:应用名称,对应客户端配置中的spring.config.name

profile:活动配置文件标识

label: 版本

服务端配置

1、pom.xml中依赖
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
 2、bootstrap.yml配置项
server:
  port: 8888
spring:
  cloud:
    config:
      server:
        git:
#          uri: https://github.com/hjguang/{application}
            uri: https://github.com/hjguang/cloud-config
management:
  security:
    enabled: false
3、启动主程序,添加相应注解
@EnableConfigServer
@SpringBootApplication
public class ConfigServerApp {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		SpringApplication.run(ConfigServerApp.class, args);

	}

}
4、启动验证  
http://localhost:8888/env

客户端配置

1、pom.xml添加依赖
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
 2、bootstrap.yml
spring:
  application:
    name: config-client
  cloud:
    config:
      uri: http://localhost:8888
 #     profile: ${profile}

server:
  port: 8090

management:
  security:
    enabled: false
3、客户端获取配置代码
@RestController
@SpringBootApplication
public class ConfigClientApp {

	@Value("${db.url}") String url;
	@Value("${db.username}") String userName;
	@Value("${db.password}") String password;
	
	@RequestMapping("/dbconfiginfo")
	public String getValue() {
		return "URL :" + url + " UserName:" + userName + " Password:" + password;
	}
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		SpringApplication.run(ConfigClientApp.class, args);
	}

}
 4、结果查看:http://localhost:8090/dbconfiginfo

URL :cc_url UserName:cc_user1 Password:cc_pw

使用profile

启动客户端时,添加参数--profile=test,客户端将获取配置仓库中config-client-test.properties中的配置内容

显示结果:URL :url-test UserName:test-u Password:test-pw

每个项目分配一个配置仓库地址

服务端配置文件的git url改为:uri: https://github.com/hjguang/{application}

示例结果:URL :url-test UserName:test-u Password:test-pw

 

项目地址

https://github.com/hjguang/spring-cloud

分享到:
评论

相关推荐

    SpringCloud Config Demo编写

    1.Spring Cloud Config 用于为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,分为服务端和客户端。 2.服务端为分布式配置中心,是一个独立的微服务应用;客户端为分布式系统中的基础设置或微服务...

    Spring Cloud之Config分布式配置应⽤

    Spring Cloud Config 是一个用于在分布式系统中管理外部配置的工具,它支持服务发现和集中式配置。这个框架允许你集中存储、管理和版本化你的应用配置,使得开发人员可以在不重启应用的情况下更新配置。本文将深入...

    spring cloud config

    Spring Cloud Config 是一个用于微服务架构中的外部配置中心,它允许开发者在运行时管理应用程序的配置。这个框架基于Git或Subversion等版本控制系统,提供了一种集中化、动态化的配置方式,使得微服务可以从中央...

    spring cloud config、bus源码

    Spring Cloud Config/Bus 源码解读 本文将对 Spring Cloud Config/Bus 的源码进行解读,涵盖 Server 端、Client 端、Bus 的运行原理等方面的内容。 一、初始化 在 Spring Cloud Config/Bus 中,初始化的过程主要...

    spring-cloud config详细demo

    Spring Cloud Config 是一个用于微服务架构的外部配置中心,它允许开发者在运行时动态地管理和配置应用程序。这个详细Demo将涵盖Spring Cloud Config的使用方法,包括集群搭建和与Eureka服务发现组件的集成。让我们...

    SpringCloud——分布式配置中心(Spring Cloud Config)

    在微服务架构中,Spring Cloud Config 是一个强大的分布式配置中心,它允许开发人员将应用程序的配置存储在远程仓库中,并且可以在运行时动态地管理和更新这些配置,无需重启应用。这个特性对于大型分布式系统来说...

    Spring Cloud Config Demo

    Spring Cloud Config 是一款基于Spring Boot实现的配置管理工具,它允许开发者在远程服务器上集中管理和动态更新应用的配置,使得微服务架构中的配置管理变得更加便捷。这个"Spring Cloud Config Demo"是一个实例,...

    SpringCloud项目实战各组件源代码案例

    springcloud-config.zipspringcloud-config-oracle.zip springcloud-config-oracle-bus-kafka.zipspringcloud-feign.zip springcloud-producer.zip springcloud-producer-consumer.zip springcloudstudy.

    Spring Cloud Config(本地配置中心或git配置中心)

    Spring Cloud Config 是一个用于微服务架构的集中式配置管理工具,它允许开发人员在不同的环境中管理应用程序的配置。本文将详细介绍如何搭建Spring Cloud Config,并探讨其作为本地配置中心和Git配置中心的两种模式...

    Spring Cloud之 Config 中 配置文件的加密与解密

    JCE补丁下载

    《深入理解Spring Cloud与微服务构建》学习笔记(二十)~配置中心Spring Cloud Config

    在本篇学习笔记中,我们将深入探讨Spring Cloud Config——一个强大的配置管理工具,它使得在分布式系统中管理和分发配置变得简单。Spring Cloud Config支持服务器端和客户端两种组件,允许我们在开发过程中动态地...

    基于Spring Cloud Config的Spring Cloud Config Admin设计源码

    本项目为基于Spring Cloud Config的Spring Cloud Config Admin设计源码,集成了495个文件,涵盖191个JavaScript文件、78个Java源文件、65个图片文件(包括jpg和png)、24个属性文件、23个SVG文件、17个XML文件、10个...

    Spring Cloud实战 _springcloud实战_springcloud_

    Spring Cloud Config是配置管理工具,它支持配置服务的集中化管理和动态刷新,使得开发者可以在不重启应用的情况下更新配置。另外,Spring Cloud Bus可以将配置变更实时推送到所有关联的服务,进一步提高了配置管理...

    spring cloud config 代码示例

    Spring Cloud Config 是一个用于管理应用配置的微服务框架,它允许开发者在开发、测试和生产环境中,以集中化、外部化的方式管理应用的配置。这个框架使得配置可以在不同的环境之间轻松切换,为分布式系统的配置管理...

    spring-cloud项目_springcloud_springcloud项目_springcloud_spring-clou

    5. **Spring Cloud Config**: 这是一个配置服务器和客户端的集合,允许你在开发过程中集中管理和推送配置,支持 Git 存储和服务器端的实时刷新。 6. **Spring Cloud Bus**: 控制总线,用于广播事件到所有的服务实例...

    Springboot整合Spring Cloud Kubernetes读取ConfigMap支持自动刷新配置的教程

    在本教程中,我们将深入探讨如何将Spring Boot应用程序与Spring Cloud Kubernetes相结合,以实现从Kubernetes的ConfigMap中动态读取并自动刷新配置。Spring Cloud Kubernetes是一个强大的工具,它允许我们在...

    Spring Cloud配置中心获取不到最新配置信息的问题

    Spring Cloud配置中心获取不到最新配置信息的问题可以通过设置 `spring.cloud.config.server.git.basedir` 或 `spring.cloud.config.server.svn.basedir` 参数来解决,关键是了解配置中心的工作机制和基于VCS的...

    spring cloud config client 服务配置中心 客户端

    Spring Cloud Config Client是Spring Cloud生态系统中的一个组件,它允许微服务应用从远程配置服务器获取配置信息,实现配置的集中管理和动态更新。这个组件是服务配置中心的重要组成部分,它极大地简化了分布式系统...

    SpringCloud统一配置中心-jilinwula-springcloud-config.zip

    在这个特定的压缩包"SpringCloud统一配置中心-jilinwula-springcloud-config.zip"中,我们关注的是SpringCloud的配置中心,这是一个关键的特性,用于集中管理和分发应用的配置,使得在分布式系统中能够动态更新配置...

    SpringCloud之七 分布式配置中心SpringCloudConfig.pdf

    Spring Cloud Config是Spring Cloud全家桶中的一个组件,它主要用于实现分布式系统中的配置管理。在微服务架构下,系统通常被拆分成许多个小的微服务,每个服务都有自己的配置文件。当配置文件频繁更改或不同服务...

Global site tag (gtag.js) - Google Analytics