springcloud之spring cloud config 分布式配置中心

分布式配置中心:在微服务中使用同一个服务器管理所有服务配置文件信息,能够实现后台可管理,同时也可实现实时更改配置文件信息而不需要重启服务器的功能(实时:自动和手动(actuator端点)刷新)

分布配置中心需要哪些组件:

  1. web管理系统(图形化)--》springcloud config没有图形化
  2. 存放分布式配置文件服务器--使用版本控制器存放配置文件信息(git|svn)
  3. configserver缓存配置文件服务器
  4. configclient读取configserver配置文件信息

现在开始手动操作代码中配置spring cloud config

s1.创建git仓库

springcloud之spring cloud config 分布式配置中心_第1张图片

s2.创建configserver项目

a.pom.xml


		    org.springframework.cloud
		    spring-cloud-starter-netflix-eureka-client
		
		
		
		
		
		    org.springframework.cloud
		    spring-cloud-config-server
		

b.application.yml

server:
  port:  8000
spring:
  application:
    name:  eureka-config-server
  cloud:
    config:
      server:
        git:
          uri:  https://gitee.com/..../edu_config_server.git
          search-paths:
          - member
          username:  your name
          password:  your password
      label:  master
eureka:
  client:
    serviceUrl:
      defaultZone:  http://127.0.0.1:8200/eureka
    register-with-eureka: true
    fetch-registry:  true

c.启动类追加以下注解

@EnableEurekaClient
@EnableConfigServer

s3.创建configclient

a.pom.xml


		
		    org.springframework.boot
		    spring-boot-starter-actuator
		
		
		
		
		    org.springframework.cloud
		    spring-cloud-config-client
		

b.bootstrap.yml

server:
  port: 8302
spring:
  application:
    name:  eureka-feign-member
  cloud:
    config:
      profile:  dev
      discovery:
        serviceId:  eureka-config-server
        enabled:  true
eureka:
  client:
    serviceUrl:
      defaultZone:  http://127.0.0.1:8200/eureka
    register-with-eureka: true
    fetch-registry:  true
##2.开启所有端点(手动刷新)
management:
  endpoints:
    web:
      exposure:
        include:  "*"

c.

@RestController
@RefreshScope  // 3.手动刷新
public class MemberController {
	
	@Autowired
	private MemberServiceImpl memberServiceImpl;
	
	// spring cloud config 配置文件
	@Value("${test.info}")
	private String devInfo;
	
	@RequestMapping("getInfo")
	public String getInfo(){
		return devInfo;
	}

注意:手动刷新:http://localhost:8302/actuator/refresh  (post方式)

你可能感兴趣的:(springcloud)