关于java:Eureka-多环境隔离方案包含本地开发人员间隔离

78次阅读

共计 691 个字符,预计需要花费 2 分钟才能阅读完成。

一、多环境场景

  1. 地理分布宽泛,多机房,分布式注册核心实现;
  2. 开发过程中,我的项目个别分为 local,dev,test,uat,prod 等环境;
  3. 开发人员在调试本地代码时,每个开发人员调用本地服务,互相独立,不影响各方;
  4. 开发人员调试微服务模块时,只须要启动须要调试的模块和网关即可,其余模块和接口主动调用预设环境中接口。

二、技术点

2.1 YAML 文件 (.yml) 中的键 (key) 通过变量援用来设置

  1. 援用整块 YAML 配置

    替换键,则须要用到锚点。锚点用符号“&”定义,并用符号“*”进行援用。
    锚点有两种应用形式,一是通过“<<:”将键值对一起引入:

    test-db: &test-db-config
      host: 127.0.0.1
      port: 3306
    
    user-db:
      <<: *test-db-config

    通过 Spring 解析之后:

    test-db:
      host: 127.0.0.1
      port: 3306
    
    user-db:
      host: 127.0.0.1
      port: 3306

    阐明:& 前面的锚点名字,可本人定义,不用与配置量的键雷同。

  2. 动静生成 Map 中的 Key,仅引入配置的值

    原始配置

    eureka:
      user: &euser ${user.name}
      client:
     service-url:
       devZone: http://***/eureka/
       *euser: http://***/eureka/

    通过 spring 解析之后

    eureka:
      user: liudehua
      client:
     service-url:
       devZone: http://***/eureka/
       liudehua: http://***/eureka/

2.2 Eureka 的 region 和 zone

正文完
 0