热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

SpringCloud-Config分布式配置代码示例

这篇文章主要介绍了SpringCloud-Config分布式配置代码示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

概述

Spring Cloud Config为分布式系统中的外部化配置提供服务器端和客户端支持。使用Config Server,您可以在中心位置管理所有环境中应用程序的外部属性。客户端和服务器上的概念都与Spring Environment和PropertySource抽象映射相同,因此它们非常适合Spring应用程序,但可以与以任何语言运行的任何应用程序一起使用。

在应用程序从开发人员到测试人员再到生产人员的整个部署过程中,您可以管理这些环境之间的配置,并确保应用程序具有它们迁移时所需的一切。服务器存储后端的默认实现使用git,因此它轻松支持带标签的配置环境版本,并且可以通过各种工具来访问这些内容来管理内容。添加替代实现并将其插入Spring配置很容易。

•去码云创建仓库,克隆到本地文件夹,配置application.yml文件

  •application.yml配置

spring:
 profiles:
  active: dev

---
spring:
 profiles: dev
 application:
  name: springcloud-config-dev

---
spring:
 profiles: test
 application:
  name: springcloud-config-test

  •把这个文件提交到码云上,总共四步。

  第一步:

    把文件添加到暂存区    

git add

   在这里添加

    第二步:

      查看状态

git status

   第三步:

提交

git commit -m "fist commit" //fist commit是描述信息

   第四步:

      push到远程

git push origin master

   测试:成功

 •创建服务端Server项目

  •导入依赖


    
    
    
      org.springframework.cloud
      spring-cloud-config-server
      2.1.1.RELEASE
    
    
    
      org.springframework.boot
      spring-boot-starter-actuator
    
    
      org.springframework.boot
      spring-boot-starter-web
    

  

  •编写配置

server:
 port: 3344
spring:
 application:
  name: springcloud-congi-server
  #连接远程仓库
 cloud:
  config:
   server:
    git:
     uri: https://gitee.com/springandspring/springcloud-config.git #这里的uri是码云上自己创建的仓库HTTPS下载的地址

  •开启功能

@EnableConfigServer

  •测试

  •更上面一样

  •config-client配置

spring:
 profiles:
  active: dev

---
server:
  port: 8201
#spring的配置
spring:
 profiles: dev
 application:
  name: springcloud-provider-dept

#Eureka的配置,服务注册到哪里
eureka:
 client:
  service-url:
   defaultZone: http://eureka7001.com:7001/eureka/


---
server:
  port: 8202
#spring的配置
spring:
 profiles: test
 application:
  name: springcloud-provider-dept

#Eureka的配置,服务注册到哪里
eureka:
 client:
  service-url:
   defaultZone: http://eureka7001.com:7001/eureka/

  •执行上面的四步,push到远程

  •创建一个client客户端新项目

  •导入依赖



    
    
    
      org.springframework.cloud
      spring-cloud-starter-config
      2.1.1.RELEASE
    

    
      org.springframework.boot
      spring-boot-starter-actuator
    
    
      org.springframework.boot
      spring-boot-starter-web
    
  

  •编写bootstrap配置  

#系统级别的配置 比用户级别设置先执行
spring:
 cloud:
  config:
   profile: dev   #生产环境
   name: config-client     #需要从git上读取的资源名称,不需要后缀
   label: master
   uri: http://localhost:3344 #连接服务端的地址
   #相当于http://localhost:3344/master/config-client-dev/master

  编写application配置

#用户级别的设置
spring:
 application:
  name: springcloud-config-client-3355

  •编写启动类

 •编写Controller

@RestController
public class ConfigClientController {
  @Value("${spring.application.name}")
  private String applicationName;
  @Value("${eureka.client.service-url.defaultZone}")
  private String eurekaServer;
  @Value("${server.port}")
  private String port;

  @RequestMapping("/config") //请求这个路径获取config-client配置里面的信息
  public String getConfig(){
    return "applicationName"+applicationName+
        "eurekaServer"+eurekaServer+
        "port"+port;
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


推荐阅读
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • REST与RPC:选择哪种API架构风格?
    在探讨REST与RPC这两种API架构风格的选择时,本文首先介绍了RPC(远程过程调用)的概念。RPC允许客户端通过网络调用远程服务器上的函数或方法,从而实现分布式系统的功能调用。相比之下,REST(Representational State Transfer)则基于资源的交互模型,通过HTTP协议进行数据传输和操作。本文将详细分析两种架构风格的特点、适用场景及其优缺点,帮助开发者根据具体需求做出合适的选择。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 基于iSCSI的SQL Server 2012群集测试(一)SQL群集安装
    一、测试需求介绍与准备公司计划服务器迁移过程计划同时上线SQLServer2012,引入SQLServer2012群集提高高可用性,需要对SQLServ ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 最详尽的4K技术科普
    什么是4K?4K是一个分辨率的范畴,即40962160的像素分辨率,一般用于专业设备居多,目前家庭用的设备,如 ... [详细]
  • 大家好,我是李白。本文将分享一个从零开始的全栈项目,涵盖了设计、前端、后端和服务端的全面学习过程。通过这个项目,我希望能够帮助初学者更好地理解和掌握全栈开发的技术栈。 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • 提升Android开发效率:Clean Code的最佳实践与应用
    在Android开发中,提高代码质量和开发效率是至关重要的。本文介绍了如何通过Clean Code的最佳实践来优化Android应用的开发流程。以SQLite数据库操作为例,详细探讨了如何编写高效、可维护的SQL查询语句,并将其结果封装为Java对象。通过遵循这些最佳实践,开发者可以显著提升代码的可读性和可维护性,从而加快开发速度并减少错误。 ... [详细]
  • 本文深入探讨了 Git 与 SVN 的高效使用技巧,旨在帮助开发者轻松应对版本控制中的各种挑战。通过详细解析两种工具的核心功能与最佳实践,读者将能够更好地掌握版本管理的精髓,提高开发效率。 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • 本指南详细介绍了如何在CentOS 6.6 64位系统上以root用户身份部署Tomcat 8服务器。系统环境为CentOS 6.6 64位,采用源码安装方式。所需软件为apache-tomcat-8.0.23.tar.gz,建议将软件下载至/root/opt目录。具体下载地址请参见官方资源。本指南涵盖了从环境准备到服务启动的完整步骤,适用于需要在该系统环境下搭建高性能Web应用服务器的技术人员。 ... [详细]
author-avatar
Cornell和Janey的BabyPeter_580
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有