zoukankan      html  css  js  c++  java
  • SpringCloud Config

    原因

    Bootstrap.yml (bootstrap.properties) 是在application.yml (application.properties)之前加载的。它通常用于“使用SpringCloud Config Server时,应在bootstrap.yml中指定spring.application.name和spring.cloud.config.server.git.uri”以及一些加密/解密信息。

    Spring Cloud会创建一个`Bootstrap Context`(由bootstrap.yml加载),作为Spring应用的`Application Context`(由application.yml加载)的父上下文。初始化的时候,`Bootstrap Context`负责从外部源加载配置属性并解析配置。这两个上下文共享一个从外部获取的`Environment`。`Bootstrap`属性有高优先级,默认情况下,它们不会被本地配置覆盖。

    例如,当使用SpringCloud Config时,通常从服务器加载“真正的”配置数据。为了获取URL(和其他连接配置,如密码等),您需要一个较早的或“bootstrap”配置。因此,您将配置服务器属性放在bootstrap.yml中,该属性用于加载实际配置数据(通常覆盖application.yml [如果存在]中的内容)。

    问题描述

    根据网上的各种教程说明,将config服务的地址写到application.properties中

    spring.cloud.config.uri= http://localhost:8888/

    config服务本地开启,项目正常启动,能读到远程配置
    今天为了方便使用,将config服务部署到测试服务器并将配置文件改为:

    spring.cloud.config.uri= http://192.168.1.222:8888/

    奇迹在此发生,无论怎么启动日志打印出的远程文件服务都是http://localhost:8888/
    完全懵逼状态,难道这货还有缓存.经过一系列的clean问题依旧
    百度了一下 没有相关的信息
    无奈的情况下,发挥我二货潜质,新建项目,指定地址,启动……..问题依旧
    万般无奈的情况下点开源码,发现

    这里写图片描述

    debug后发现 启动时 uri没有从application.properties中获取.
    继续百度,发现 springboot的配置文件除了application.properties外还有一个叫bootstrap.properties的东东(问号脸)
    新建bootstrap.properties文件,复制config配置到文件中,启动.问题解决
    本着刨根问底的精神去查询了一下 两个文件的区别,请参考
    https://www.cnblogs.com/EasonJim/p/7589546.html

    三、高级使用场景

    https://www.cnblogs.com/BlogNetSpace/p/8469033.html

    参考文献

    版权声明:本文为CSDN博主「lovemf0919」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/lovmf0919/article/details/78584236

  • 相关阅读:
    select count(*) as total from(select count(*) from tab_cb_casim group by `card_no`) as cai;
    GROUP BY关键字与WITH ROLLUP一起使用
    用HTML5播放IPCamera视频
    三,ESP8266 SPI(基于Lua脚本语言)
    二,ESP8266 GPIO和SPI和定时器和串口(基于Lua脚本语言)
    一,ESP8266下载和刷固件(基于Lua脚本语言)
    AT24C02使用详解
    C#上位机串口控制12864显示
    关于STM32 IAP
    2-LPC1778之GPIO
  • 原文地址:https://www.cnblogs.com/frankcui/p/15256664.html
Copyright © 2011-2022 走看看