Spring Cloud 如何搭建Config

利用spring cloud 的 spring-cloud-config-server 组件 搭建自己的配置中心 config-server

配置文件可以存放在 github ,gitlab 等上面,搭建自己的注册中心,完成对配置的统一管理和访问,后期我们会实现配置的动态刷新。

把配置文件放在github 上
https://github.com/halouprogramer/spring-config-repository

文件名格式
应用名-环境配置.yml
例如: spring-school(应用名)-dev(profiles 环境配置)

server 端配置:

1.pom引入

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-config-server</artifactId>
</dependency>

2. 配置文件

spring:
  application:
    name: spring-config
  cloud:
    config:
      server:
        git:
          uri: https://github.com/halouprogramer/spring-config-repository.git
#          username: ***
#          password: ***
          basedir: ~/temp/gitlab

  

3.启动类注解

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;

@EnableEurekaClient
@EnableConfigServer
@SpringBootApplication
public class SpringConfigApplication {

   public static void main(String[] args) {
      SpringApplication.run(SpringConfigApplication.class, args);
   }

}

本地启动server端访问自己在仓库中存在的配置 http://localhost:8083/spring-school-dev.yml ,如果访问得到说明没有问题

客户端通过配置中心拉去配置:

spring:
  application:
    name: spring-school
  cloud:
    config:
      discovery:
        enabled: true
        service-id: SPRING-CONFIG #访问配置中心项目名称
      profile: dev
  profiles:
    active: dev

  

完整代码访问 :
https://github.com/halouprogramer/spring-cloud-demo

原文地址:https://www.cnblogs.com/haloujava/p/12079939.html

时间: 2024-08-30 18:35:34

Spring Cloud 如何搭建Config的相关文章

Spring Cloud(Dalston.SR5)--Config 集群配置中心

Spring Cloud Config 是一个全新的项目,用来为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,他分为服务端和客户端两个部分.服务端也称为分布式配置中心,是一个独立的微服务应用,用来连接配置仓库并为客户端提供获取配置信息.加密.解密信息等访问接口:而客户端则是为微服务架构中的各个微服务应用,通过指定的配置中心来管理应用资源与业务相关的配置内容,并在启动的时候从配置中心获取和加载配置信息.服务端与客户端的结构图如下: ? ? ? ? Spring Cloud 程序在进行

Spring Cloud 入门 之 Config 篇(六)

原文地址:Spring Cloud 入门 之 Config 篇(六) 博客地址:http://www.extlight.com 一.前言 随着业务的扩展,为了方便开发和维护项目,我们通常会将大项目拆分成多个小项目做成微服务,每个微服务都会有各自配置文件,管理和修改文件起来也会变得繁琐.而且,当我们需要修改正在运行的项目的配置时,通常需要重启项目后配置才能生效. 上述的问题将是本篇需要解决的问题. 二.介绍 2.1 简单介绍 Spring Cloud Config 用于为分布式系统中的基础设施和微

spring cloud 学习(5) - config server

分布式环境下的统一配置框架,已经有不少了,比如百度的disconf,阿里的diamand.今天来看下spring cloud对应的解决方案: 如上图,从架构上就可以看出与disconf之类的有很大不同,主要区别在于: 配置的存储方式不同 disconf是把配置信息保存在mysql.zookeeper中,而spring cloud config是将配置保存在git/svn上 (即:配置当成源代码一样管理) 配置的管理方式不同 spring cloud config没有类似disconf的统一管理界

spring cloud 初步搭建1-1(eureka配置)

本次版本基于spring cloud (Finchley.RELEASE) spring boot ( 2.0.4.RELEASE ) 踩坑1:spring cloud从 2.0.几开始,需要引入的依赖包会变.最大的特点是 spring-cloud-starter-netflix,许多依赖的组件配置maven时都多了一个netflix(之前是没有的) 踩坑2:如果spring cloud的版本与依赖的组件版本不匹配,直接会出错.一般都是maven依赖找不到对应的jar包 ps : 如果不确定对应

Spring Cloud(Dalston.SR5)--Config 集群配置中心-刷新配置

远程 SVN 服务器上面的配置修改后,需要通知客户端来改变配置,需要增加 spring-boot-starter-actuator 依赖并将 management.security.enabled 设置为 false,然后访问客户端的 /refresh 端点进行刷新,访问改端点要使用 HTTP 的 POST 方法,客户端的 refresh 在接收到请求后,会重新到配置服务器获取最新的配置,然后用新的配置和旧配置进行对比,最终把有修改的配置 Key 返回给调用者. 在实际应用中,往往不仅是刷新一个

Spring Cloud之搭建动态Zuul网关路由转发

传统方式将路由规则配置在配置文件中,如果路由规则发生了改变,需要重启服务器.这时候我们结合上节课内容整合SpringCloud Config分布式配置中心,实现动态路由规则. 将yml的内容粘贴到码云上: ###注册 中心 eureka: client: serviceUrl: defaultZone: http://localhost:8100/eureka/ server: ##api网关端口号 port: 80 ###网关名称 spring: ##网关服务名称 application: n

spring cloud 快速搭建

1.首先新建一个普通maven工程 项目名自定义都可以 2.然后在maven工程下新建一个基于spring boot 的module 为注册中心,勾选Eureka的配置,在启动类上面加注解@EnableEurekaServer: 修改resources中的配置文件为yml的格式并添加图片中的配置 3.在maven下再新建一个common包为公共组件包,存放项目公共类,公共组件等 普通的springboot项目就可以.加入需要的实体类之后将项目打包如下 4在maven下新建一个基于springbo

Spring Cloud Ribbon快速搭建

Spring Cloud Ribbon 是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现.通过 Spring Cloud 的封装, 可以让我们轻松地将面向服务的 REST 模板请求自动转换成客户端负载均衡的服务调用.在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的.Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign. 一般说的 负载均衡 是指 服务器端的

1 Spring Cloud Eureka服务治理

注:此随笔为读书笔记.<Spring Cloud微服务实战> 什么是微服务? 微服务是将一个原本独立的系统拆分成若干个小型服务(一般按照功能模块拆分),这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作.每个微服务维护自身的数据存储.业务开发.自动化测试案例以及独立部署机制.维护自身的数据存储称为数据管理的去中心化.由于数据管理的去中心化,各个微服务的数据一致性成为一个难题,因此,需要强调的是各个服务之间进行无"事务"的调用.