IDEA利用spring.profiles.active启动Eureka集群

在我们进行微服务开发的过程中,为了保证服务的高可用,经常会使用到集群,已Eureka为例,我们为了保证Eureka的高可用,经常会搭建3个节点的Eureka集群,而为了测试,我们需要再本机启动Eureka的集群,很多视频或者博客教程中,都采用的是将Eureka工程进行复制多个,然后修改端口号进行启动,或者打成jar包,修改配置文件启动多个。此篇文章,笔者将通过IDEA配置,引用不同的配置文件即可简单方便的启动我们的服务集群。

开始之前

在文章开始之前,介绍一个实用的工具SwitchHosts。
SwitchHosts是一个管理、快速切换Hosts小工具,开源软件,一键切换Hosts配置,非常实用,高效。
修改本机hosts文件添加如下hostname映射。
SwitchHosts是一个管理、快速切换Hosts小工具,开源软件,一键切换Hosts配置,非常实用,高效。

修改Eureka application.yml

spring:
  application:
    name: tarry-cloud-center
  profiles:
    active: 8100

添加3个application-XXX.yml文件

在application.yml文件同级目录添加如下三个文件:
application-8100.yml
application-8200.yml
application-8300.yml

server:
  port: 8100
spring:
  security:
    user:
      name: tarrycloud
      password: XXX

eureka:
  instance:
    prefer-ip-address: true
    
### Spring Boot 中 `spring.profiles.active` 的配置位置 在 Spring Boot 项目中,`spring.profiles.active` 是用于指定当前激活的环境配置的关键属性。它可以通过多种方式进行配置,具体取决于项目的实际需求和使用的配置文件类型。 #### 使用 `application.properties` 文件 如果项目使用 `.properties` 文件作为主要配置文件,则可以在 `src/main/resources/application.properties` 文件中直接声明 `spring.profiles.active` 属性[^2]。例如: ```properties spring.profiles.active=dev ``` 上述配置表示当前应用将以开发环境 (`dev`) 运行,并加载对应的 `application-dev.properties` 文件中的配置项[^3]。 #### 使用 `application.yml` 文件 对于采用 YAML 格式的配置文件,`spring.profiles.active` 可以写入 `src/main/resources/application.yml` 文件中。其语法结构如下所示[^1]: ```yaml spring: profiles: active: dev ``` 此配置同样会激活开发环境并加载相应的 `application-dev.yml` 或其他扩展名为 `.yml` 的配置文件[^5]。 #### 命令行参数覆盖 除了通过配置文件设定外,还可以利用命令行参数来动态调整活动环境。这种方式优先级较高,在运行应用程序时可通过 JVM 参数传递给程序实例: ```bash java -jar your-application.jar --spring.profiles.active=test ``` 这样即使默认配置指定了别的环境(比如 `dev`),也会被强制改为测试环境(`test`)下的设置[^4]。 #### 环境变量替代 另外一种方法就是借助操作系统级别的环境变量完成同样的功能。只需定义一个名称为 `SPRING_PROFILES_ACTIVE` 的环境变量即可实现相同效果: ```bash export SPRING_PROFILES_ACTIVE="prod" ``` 之后启动的应用便会依据所设值自动匹配至生产模式下工作状态。 综上所述,无论是静态还是动态手段都可以灵活控制不同场景下的资源配置情况,从而满足多样化的业务诉求。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值