【Spring Cloud】Spring Cloud Config详解

SpringCloud Config(配置中心)实现配置自动刷新总结 一、实现原理 1、ConfigServer(配置中心服务端)从远端git拉取配置文件并在本地git一份,ConfigClient(微服务)从ConfigServer端获取自己对应 配置文件; 2、当远端git仓库配置文件发生改变,ConfigServer如何通知到ConfigClient端,即ConfigClient如何感知到配置发生更新? Spring Cloud Bus会向外提供一个ht... 阅读详情

Spring Cloud Config

Spring Cloud Config 解决的是微服务项目中“配置分散、环境复杂、修改成本高”的问题。单体项目里,配置通常写在本地 application.yml 中,应用启动时直接读取即可。但微服务项目会拆出多个服务,每个服务又会区分开发、测试、生产等环境。如果每个服务都自己维护一份配置,时间久了就会出现配置重复、版本混乱、修改困难的问题。

配置中心的思路就是把配置从服务代码里抽出来,交给一个统一的服务管理。Spring Cloud Config 中,承担统一管理角色的是 Config Server,真正使用配置的业务服务是 Config Client。Config Server 从 Git、本地文件系统、Vault、JDBC 等后端读取配置,再通过 HTTP 接口提供给各个客户端。Config Client 启动时访问 Config Server,拉取属于自己的配置并加载到 Spring Environment 中。

在这里插入图片描述

为什么需要 Spring Cloud Config

微服务拆分之后,配置数量会快速增加。比如一个电商系统可能有用户服务、订单服务、商品服务、网关服务,每个服务又可能有 dev、test、prod 三套环境。如果所有配置都放在各自服务内部,修改数据库地址、缓存地址、开关配置时,就需要分别进入多个服务修改,甚至重新打包发布。

Spring Cloud Config 把配置统一放到远程配置仓库中,服务本身只保留“我是谁、我要去哪里拉配置”这类最基础的信息。这样一来,配置的维护位置就从“每个微服务内部”变成了“统一配置仓库”,配置读取入口也从“服务本地文件”变成了“Config Server”。

这种变化带来两个直接好处。第一,配置可以集中管理,避免同一个配置在多个服务中重复维护。第二,配置可以通过 Git 追踪历史,谁改了什么、什么时候改的,都有记录。对于团队协作和多环境管理来说,这比散落在各个服务里的配置更可靠。

Config Server 与 Config Client 的关系

Config Server 是配置中心服务端,它不一定直接保存配置文件,而是连接一个配置后端。入门阶段最常见的是 Git 仓库。Git 仓库中可以存放类似 user-service-dev.yml、order-service-prod.yml 这样的配置文件。Config Server 启动后,会读取这些配置,并通过 HTTP 接口提供给客户端。

Config Client 是具体业务服务,例如 user-service、order-service、gateway-service。这些服务启动时会主动访问 Config Server。访问时,客户端会告诉服务端三个关键信息:应用名、环境和配置版本。Config Server 根据这三个信息找到对应配置,再返回给客户端。

这里的三个信息非常重要。application 表示应用名,通常来自 spring.application.name。profile 表示环境,例如 dev、test、prod。label 通常表示 Git 分支或标签,例如 main、master、v1.0。所以 Config Server 本质上是在回答一个问题:某个应用在某个环境下,需要读取哪个版本的配置。

如果 user-service 启动时指定了应用名为 user-service,环境为 dev,配置仓库分支为 main,那么它访问 Config Server 时,Config Server 就会尝试查找和 user-service-dev 相关的配置,并把结果组合成 Spring 可以识别的 PropertySource 返回给客户端。

Config Server 简单部署

搭建 Config Server 的第一步是创建一个普通 Spring Boot 服务,并添加 Config Server 依赖。这个依赖让当前服务具备从配置仓库读取配置并对外暴露配置接口的能力。

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

然后在启动类上添加 @EnableConfigServer。这个注解的作用是开启 Config Server 功能,让这个 Spring Boot 应用不再只是普通服务,而是可以作为配置中心服务端工作。

@SpringBootApplication
@EnableConfigServer
public class ConfigServerApplication {
    public static void main(String[] args) {
        SpringApplication.run(ConfigServerApplication.class, args);
    }
}

接下来需要告诉 Config Server 配置仓库在哪里。最常见的是配置 Git 仓库地址。

server:
  port: 8888

spring:
  application:
    name: config-server
  cloud:
    config:
      server:
        git:
          uri: https://example.com/config-repo.git
          default-label: main

server.port 决定 Config Server 的访问端口,常见示例端口是 8888。spring.cloud.config.server.git.uri 指向远程配置仓库地址。default-label 表示默认读取哪个分支或标签。

启动 Config Server 后,如果配置仓库中存在 user-service-dev.yml,客户端或浏览器可以通过类似 http://localhost:8888/user-service/dev/main 的路径访问配置。这个路径中的 user-service 对应应用名,dev 对应环境,main 对应 Git 分支。

本地学习时也可以使用 native 模式,把配置仓库放在本地目录中。它的好处是简单,不需要先准备远程 Git 仓库,但真实项目中更常用 Git,因为 Git 更适合团队协作、版本回退和变更审计。

spring:
  profiles:
    active: native
  cloud:
    config:
      server:
        native:
          search-locations: file:///D:/config-repo

Config Client 简单部署

Config Client 是业务服务。它的目标不是管理配置,而是在启动时从 Config Server 拿到自己的配置。客户端需要添加 spring-cloud-starter-config 依赖。

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

新版本更推荐使用 spring.config.import 的方式导入远程配置。这样写的含义很明确:当前应用启动时,除了读取本地配置,也会从 Config Server 导入配置。

spring:
  application:
    name: user-service
  profiles:
    active: dev
  config:
    import: optional:configserver:http://localhost:8888

这里的因果关系要理解清楚。spring.application.name 决定应用名,所以它影响 Config Server 查找哪个服务的配置。spring.profiles.active 决定当前环境,所以它影响读取 dev、test 还是 prod 配置。spring.config.import 决定配置来源,所以它告诉 Spring Boot:请到这个 Config Server 地址拉取远程配置。

如果配置仓库中有 user-service-dev.yml,内容如下:

user:
  level: vip

那么 user-service 启动后,就可以像读取本地配置一样读取到 user.level。从业务代码角度看,它不需要关心这个配置原本来自 Git 还是本地文件,因为配置最终都会进入 Environment。

@RestController
public class UserController {

    @Value("${user.level:normal}")
    private String userLevel;

    @GetMapping("/level")
    public String level() {
        return userLevel;
    }
}

到这里,Spring Cloud Config 的第一条主线就完整了:配置放在 Git 中,Config Server 读取 Git,Config Client 启动时从 Config Server 拉取配置。

刷新机制

Config Client 启动时会拉取配置,但服务启动完成后,它不会自动每秒去检查配置仓库有没有变化。也就是说,如果你修改了 Git 仓库中的配置,已经运行中的服务通常不会立即感知。

这就产生了一个新问题:配置中心解决了“配置放在哪里、启动时怎么读取”的问题,但还没有完全解决“运行时配置变化后怎么生效”的问题。

最基础的方式是手动刷新。比如通过 Actuator 的 /actuator/refresh 端点让某个服务重新加载配置。这个方式在单个服务、单个实例时还能接受,但在真实微服务场景中很快会变得麻烦。

假设系统有 5 个服务,每个服务部署 3 个实例,那么一次配置变化可能需要处理 15 个实例。如果人工逐个调用刷新接口,不仅低效,还容易漏掉某个实例。为了让配置变更自动传播,就需要 Webhook 和 Spring Cloud Bus 配合。

Webhook 的概念

Webhook 是一种事件回调机制。它和轮询正好相反。轮询是服务不断去问配置仓库有没有变化;Webhook 是配置仓库发生变化后,主动通知指定地址。

以 Git 仓库为例,当开发者修改配置并 push 到 GitHub、GitLab 或 Gitee 后,仓库平台可以向 Config Server 的某个接口发送 HTTP POST 请求。这个请求的意义不是传输完整配置,而是告诉 Config Server:配置仓库已经发生变化,你需要处理刷新。

在 Spring Cloud Config 中,Config Server 引入 spring-cloud-config-monitor 后,可以开启 /monitor 端点。Webhook 通常就配置到这个 /monitor 端点上。于是配置变化后的链路变成:开发者修改配置,push 到仓库,仓库触发 Webhook,Webhook 请求 Config Server 的 /monitor,Config Server 获知配置变化。

在这里插入图片描述

Webhook 只解决了“谁来告诉 Config Server 仓库变了”的问题。但 Config Server 知道配置变了以后,还要通知所有相关微服务实例刷新。这个广播能力就是 Spring Cloud Bus 要解决的问题。

Spring Cloud Bus 自动刷新机制

Spring Cloud Bus 可以理解为分布式系统中的消息总线。它把多个微服务实例通过消息代理连接起来,例如 RabbitMQ 或 Kafka。Config Server 收到配置变化通知后,可以把刷新事件发送到 Bus 上,再由 Bus 广播给相关的 Config Client 实例。

有了 Spring Cloud Bus,配置刷新链路就从“人工逐个刷新实例”变成了“触发一次事件,消息总线自动广播”。这个变化的关键价值是降低运维成本,并减少遗漏实例的风险。

完整流程可以按因果顺序理解。首先,配置仓库发生变化。然后,Webhook 把变化通知给 Config Server 的 /monitor。Config Server 收到通知后,不直接逐个调用服务,而是发布一个 RefreshRemoteApplicationEvent。接着,Spring Cloud Bus 通过 RabbitMQ 或 Kafka 把这个事件广播出去。最后,Config Client 收到事件后刷新本地 Environment,并重新创建或刷新带有 @RefreshScope 的 Bean。

@RefreshScope 很关键。配置刷新不是让所有对象都自动变成新值。只有那些被纳入刷新范围的 Bean,才会在刷新事件到来后重新读取配置。因此,运行时可能变化的配置类,通常会配合 @RefreshScope 使用。

Webhook + Bus 简单配置

Config Server 侧需要具备两个能力:接收仓库变更通知,以及把刷新事件发布到消息总线。因此需要添加 monitor 和 bus 相关依赖。以 RabbitMQ 为例:

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

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>

Config Client 侧也需要接入 Bus,因为客户端要能从消息总线接收刷新事件。同时还需要 Actuator 参与刷新相关能力。

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

Config Server 和 Config Client 要连接同一个消息代理。如果使用 RabbitMQ,可以配置连接信息。

spring:
  rabbitmq:
    host: localhost
    port: 5672
    username: guest
    password: guest

如果某个配置类需要运行时刷新,可以使用 @RefreshScope。

@Component
@RefreshScope
@ConfigurationProperties(prefix = "app")
public class AppProperties {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

配置仓库的 Webhook 地址通常指向 Config Server 的 /monitor。本地测试时,也可以手动向 /monitor 发送请求,模拟仓库触发通知。

curl -X POST http://localhost:8888/monitor \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "path=user-service"

这里的 path=user-service 表示和 user-service 相关的配置发生变化,Config Server 会尝试将刷新事件发送给匹配的应用。

加密环境

配置中心集中管理配置后,新的问题出现了:敏感配置也会集中起来。数据库密码、Redis 密码、第三方接口密钥如果直接以明文形式存入 Git 仓库,一旦仓库权限配置不当、人员误操作、日志暴露或历史提交泄露,就可能造成安全问题。

所以,配置中心不仅要解决“配置统一管理”,还要解决“敏感配置如何安全存储”。Spring Cloud Config 的加密机制就是为这个问题服务的。

它的基本思路是:Git 仓库里不直接保存明文密码,而是保存以 {cipher} 开头的密文。Config Server 读取配置时识别到 {cipher} 前缀,就在返回给 Config Client 前完成解密。这样,仓库里是密文,业务服务拿到的是正常可用的明文配置。

在这里插入图片描述

加密与解密端点

Config Server 提供 /encrypt 和 /decrypt 两个端点。/encrypt 用来把明文变成密文,/decrypt 用来验证密文是否可以正确还原。

例如,把一个明文密码加密:

curl localhost:8888/encrypt -s -d mysecret

返回的密文需要加上 {cipher} 前缀后写入配置文件。

spring:
  datasource:
    username: appuser
    password: '{cipher}682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda'

如果使用 .properties 文件,加密值不要再额外加引号,否则可能影响解密。

spring.datasource.password={cipher}682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda

/decrypt 常用于本地验证密文是否正确。

curl localhost:8888/decrypt -s -d 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda

如果 Config Server 解密失败,它不会简单地把错误密文当成密码继续使用,而是可能生成带 invalid 前缀的属性。这种设计是为了避免密文被误当成真实密码传给客户端。

对称加密

对称加密的特点是加密和解密使用同一个密钥。它的优点是配置简单,非常适合学习和本地 demo。Config Server 只需要知道这个共享密钥,就能完成 /encrypt 和 /decrypt。

encrypt:
  key: mysecretkey

也可以用环境变量保存密钥,避免把密钥写死在配置文件中。

ENCRYPT_KEY=mysecretkey

对称加密的风险也来自这个“同一个密钥”。因为加密和解密都依赖它,一旦密钥泄露,别人就可以解密所有使用这个密钥生成的配置密文。所以对称加密虽然方便,但在生产环境中要非常重视密钥的存放和权限控制。

非对称加密

非对称加密使用一对密钥:公钥和私钥。通常可以用公钥加密,用私钥解密。它比对称加密更适合正式环境,因为加密能力和解密能力可以分离,密钥管理也更规范。

在 Spring Cloud Config 中,非对称加密通常通过 keystore 配置。可以用 JDK 自带的 keytool 创建测试密钥库。

keytool -genkeypair -alias mytestkey -keyalg RSA \
  -keystore server.jks

更完整的测试命令可以包含密码和证书信息。

keytool -genkeypair -alias mytestkey -keyalg RSA \
  -dname "CN=Web Server,OU=Unit,O=Organization,L=City,S=State,C=US" \
  -keypass changeme -keystore server.jks -storepass letmein

把生成的 server.jks 放到 Config Server 的 classpath 下,然后配置 keystore 信息。

encrypt:
  keyStore:
    location: classpath:/server.jks
    password: letmein
    alias: mytestkey
    secret: changeme

这里的 location 指向密钥库位置,password 用于打开密钥库,alias 指定使用哪个密钥,secret 是密钥自身的密码。相比对称加密,非对称加密配置更复杂,但安全边界更清晰。

在这里插入图片描述

复习总结

Spring Cloud Config 的知识链路可以从“配置管理”一路推到“自动刷新”和“安全加密”。

最开始的问题是微服务配置太分散,所以引入 Config Server 和 Config Client。Config Server 统一读取配置,Config Client 启动时拉取配置。配置集中之后,又会遇到运行时变更不生效的问题,所以引入刷新机制。手动刷新在多实例场景下成本高,于是使用 Webhook 发现配置仓库变化,再通过 Spring Cloud Bus 把刷新事件广播给所有相关客户端。配置集中管理后,敏感信息也被集中存储,因此还需要加密机制。Config Server 通过 {cipher}、/encrypt、/decrypt、对称密钥或非对称密钥库来保护敏感配置。

简化记忆如下:

  • Config Server 解决“配置统一放在哪里、怎么对外提供”。
  • Config Client 解决“业务服务启动时怎么拿配置”。
  • Webhook 解决“配置仓库变化后怎么通知 Config Server”。
  • Spring Cloud Bus 解决“Config Server 怎么把刷新事件广播给所有实例”。
  • @RefreshScope 解决“哪些 Bean 能在运行时重新加载配置”。
  • {cipher} 解决“敏感配置如何以密文形式保存在 Git 中”。
  • 对称加密适合快速配置,非对称加密适合更正式的安全场景。

希望对你有所帮助,祝你身体健康~

【Spring Cloud】:如何使用Spring Cloud Config管理配置 Spring Cloud Config 是 Spring Cloud 生态系统中的一个组件,它提供了服务器和客户端支持来管理应用程序的外部化配置。通过使用 Spring Cloud Config,可以将配置信息集中存储(例如在 Git 仓库中),从而方便地管理和维护跨多个环境的应用程序配置。 阅读详情

相关推荐

Spring Cloud Config 配置中心

1.开发中的实际问题 着线上项目变的日益庞大,每个项目都散落着各种配置文件,如果采用分布式的开发模式,需要的配置文件随着服务增加而不断增多。某一个基础服务信息变更,都会引起一系列的更新和重启,运维苦不堪言也容易出错。配置中心便是解决此类问题的灵丹妙药。 市面上开源的配置中心有很多,BAT每家都出过,360的QConf、淘宝的diamond、百度的disconf都是解决这类问题。国外也有很多开源的配置中心Apache的Apache Commons Configuration、owner、cfg4j等等。这些开

淡漠的博客 1138

Spring Cloud系列之Spring Cloud Config

在入职的第二天,拉取了公司的代码,讲道理,我在看配置文件的时候,我就蒙蔽了。他是这样子的: 作为一名刚走出校园的实习生,说真的,脑袋嗡嗡嗡的。后面了解到项目用的是Spring Cloud Config,所以我就利用周末时间学习一波Spring Cloud Config。 认识Spring Cloud Config Spring Cloud Config是最早的配置中心,虽然后面的之秀Nacos把它干掉了=。=, 但是Spring Cloud Config还是很多公司在用,比如我司。 那为什么我们需要一个配置

weixin_44335140的博客 1万+

深入解析Spring Cloud Config:多样配置中心的实现与高可用策略

这篇文章探讨了配置中心的重要性及其在分布式系统中的应用,特别关注Spring Cloud Config。文章首先介绍了配置中心的由来、功能及选择标准,然后详细阐述了Spring Cloud Config的基本实现方法,包括结合Git、关系型数据库(MySQL)和非关系型数据库(MongoDB)的方案。此外,还讨论了配置中心的高可用性、客户端自动刷新机制及安全认证等扩展功能。最后,文章对比了Spring Cloud Config与Apollo的特性,强调Apollo在企业级应用中的优势。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 168万+

第十二章 Spring Cloud Config 统一配置中心详解

通过上图可知,每个微服务都有一个配置文件,目前只是11个微服务,就需要11个配置文件,若有上百个微服务呢?组件:统一配置中心服务端集中管理配置文件、统一配置中心客户端就是各微服务。Spring Cloud Config 在微服务分布式系统中,采用。配置管理中心,用来实现微服务系统中服务配置的统一管理。2、Spring Cloud Config作用。3、Spring Cloud Config 组件。1、Spring Cloud Config特性。的组件方式来提供可扩展的配置服务。「Client 客户端」

qq_41946216的博客 8522

SpringCloud之Config:从基础到高级应用

在分布式系统中,配置管理是一个至关重要的环节。随着系统规模的扩大,配置信息的管理变得越来越复杂。SpringCloud Config 应运而生,它是一个针对分布式系统的配置管理工具,旨在解决分布式系统中的配置一致性问题。SpringCloud Config 作为一款优秀的配置管理工具,为分布式系统提供了集中化、动态化的配置管理方案。通过使用 SpringCloud Config,开发人员可以更加专注于业务开发,提高开发效率,同时确保系统的稳定性和安全性。

邓邓子的博客 1776

学习笔记|多组率卡方检验和Fisher确切法|个案加权|规范表达|《小白爱上SPSS》课程:SPSS第十六讲 | 多组率卡方检验和Fisher确切法

学习笔记|多组率卡方检验和Fisher确切法|个案加权|规范表达|《小白爱上SPSS》课程:SPSS第十六讲 | 多组率卡方检验和Fisher确切法

Medlar_CN的博客 2963

Spring cloud config详解

摘要:Spring Cloud Config是一个微服务配置管理工具,包含ConfigServer(配置中心)和ConfigClient(配置客户端)。ConfigServer从Git等仓库拉取配置并提供REST接口,客户端启动时自动获取配置。支持多环境配置、动态刷新(通过/actuator/refresh或Spring Cloud Bus)、配置加密和安全认证。建议生产环境中采用高可用部署、配置分层管理和敏感信息加密。

onlymscn的博客 2309

使用TBtools进行物种间共线性分析

Sequence Toolkit ---Fasta Tools ----ID Prefix (fasta文件)

sunny_dayone的博客 8752

【Spring Cloud】Spring Cloud Config

SpringCloudConfig介绍、刷新、加密

每篇博客都不是最终版,都会随着我的学习更新 1506

新手学习Vivado XDMA (1) - 配置详细分析

PCIe 在 Vivado XDMA 中的配置分析。

qq_18553915的博客 9711

从AMCL到SLAM Toolbox:在Nav2中实现高精度纯定位的实践指南

本文详细介绍了从AMCL迁移到SLAM Toolbox纯定位模式的实践指南,帮助开发者在Nav2中实现高精度定位。通过对比AMCL与SLAM Toolbox的性能差异,提供环境配置、参数调优、Nav2集成等关键步骤,显著提升机器人在动态环境中的定位精度和重定位效率。

weixin_29292535的博客 148

Spring Cloud Config 是什么?

Spring Cloud Config 为微服务架构提供了标准化的配置管理解决方案,尤其适合基于 Spring Cloud 构建的企业级应用。它通过集中化存储、动态刷新和版本控制,解决了分布式系统配置管理的复杂性问题。在实际应用中,需结合业务场景选择合适的配置中心,并注意安全、性能和监控等方面的最佳实践。

weixin_43521001的博客 895

SV--对象拷贝、参数化的类

对象拷贝,参数化的类

创芯人--fly的博客 1570

Spring-cloud-config

本文介绍了Spring Cloud Config配置中心的使用方法及其与Nacos的区别。主要内容包括:1)Config Server的搭建与Git仓库配置;2)Config Client的配置方法;3)配置自动刷新机制,包括手动刷新、WebHook自动触发和Spring Cloud Bus集群广播;4)配置加密功能,支持对称和非对称加密。重点解决了微服务环境下配置动态更新问题,通过消息总线实现了多服务自动刷新,并提供了敏感信息加密方案。文章详细说明了从基础配置到高级功能的完整实现过程,包括相关依赖、配置文

多敲代码防脱发的博客 991

倾斜摄影与激光点云融合建模:Photoscan+ContextCapture避坑指南

本文详细解析了倾斜摄影与激光点云融合建模的技术流程,重点介绍了使用Agisoft Metashape(原Photoscan)与ContextCapture进行数据融合的实战指南。文章深入探讨了数据预处理、坐标系统一、空三计算策略及在ContextCapture中进行点云配准等关键步骤,旨在帮助从业者规避常见陷阱,高效构建兼具高精度几何与真实纹理的三维实景模型。

weixin_29062613的博客 250

R语言Rstudio突然无法启动且报错:ERROR system error 42 [str: 一, len: 3, from: UTF-8, to: ISO8859-1]...如何解决

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 2848

Spring Cloud Config

发博词坑,待填Environment 和 PropertySource简单点说PropertySource和Environment 的区别是,假设配置文件中有Placeholder,那么你从PropertySource中获取的值是带Placeholder的,从Environment中获取的值是替换了Placeholder之后的值; 参考: 【Spring4揭秘 基础2】PropertySourc

来啊 快活啊 1025

【AI编程】Codex 进阶与高阶技巧:从熟练到精通——2026 最新教程

Skill 是 Codex 的「插件」—— 一段 Markdown 定义触发条件、输入参数和执行流程。比自定义命令更强大,支持参数化、多步骤、条件判断。

十年老程序猿,AI 疯狂研究专家,前沿硬核知识分享 192

spring cloud config详解

spring cloud config详解 接着上一篇spring cloud eureka 这篇将spring cloud config,spirng cloud config 主要是讲spring cloud 所的微服务的配置文件统一交由 spring cloud config 管理. 开始上代码. 创建spirng cloud config server项目 ———————————————...

tiankong061015的博客 342

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Spring Cloud Config 核心原理

Spring Cloud Config 核心原理

weixin_46619605的博客 1100

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Day 25:Spring Cloud Config 和 Spring Cloud Gateway

提供了一个集中的配置管理系统,支持从 Git 仓库或本地文件加载配置。客户端应用可以在启动时自动从配置服务器获取配置信息,支持动态配置更新。:是一个 API 网关,主要用于路由请求、负载均衡和权限控制等功能。通过配置文件可以定义路由规则,并且可以通过过滤器进行请求的预处理和后处理。实践操作配置 Spring Cloud Config Server,使用 Git 或本地文件作为配置源,客户端应用自动获取配置。

weixin_49564779的博客 1341

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Spring Cloud Config原理

文章目录1 @Value注解2 Spring Environment的初始化3 Profiles4 Properties 1 @Value注解 通过上篇代码可知,我们只需要使用 @Value 注解,就能完成属性的注入。而 @Value 基于 Environment 的机制。我们先来看一下 @Value的注入过程 2 Spring Environment的初始化 3 Profiles 4 Properties ...

m0_37044584的博客 685

spring cloud学习——spring cloud config(一)

前言:Spring Cloud 为开发人员提供了一系列的工具来快速构建分布式系统的通用模型 。例如:配置管理、服务发现、断路由、智能路由、微代理、控制总线、一次性Token、全局锁、决策竞选、分布式session、集群状态等等。分布式系统的协助需要一大堆的模型,使用SpringCloud开发者能快速的建立支持实现这些模式的服务和应用程序。他们将适用于任何分布式环境,无论是开发者的个人电脑还是生产环...

it帝国的博客-辉 1252

spring cloud config

官方文档对spring Cloud Config的描述如下:   Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持,使用Config Server,您可以在所有环境中管理应用程序的外部属性。客户端和服务器上的概念映射与Spring Environment和PropertySource抽象相同,   因此它们与Spring应用程序非常契合,但可以与任何以任何语...

lxj的博客 161

Spring Cloud Config Native模式

背景说明 由于很多时候,生产环境没有git,也没有svn等等,所以需要使用native模式,鉴于网上缺少相关的资料,因此以此为切入点,记录一下native模式下Spring Cloud Config一些常用的功能 config-server配置 首先,老套路引入pom <dependency> <groupId>org.sprin...

屹想天开 1876
上一篇: 【Git】带你从零了解 stash 命令,彻底掌握!
下一篇: 【Redis】Sentinel 哨兵支持,附带 Docker 部署教程
Jul1en_
博客等级 码龄2年 275粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值