springBoot项目如何实现启动多个实例
springBoot项目启动多个实例
今天碰到一个需求是,将一个服务提供者启动两个实例,一个实例对外,一个实例对内,对内价格有折扣,两个实例通过指定不停的profile来区分,要求是不能改造为两个服务提供者,于是我就焦灼了,知道是配置不同的配置文件,但是却是不知道怎么同时启动两个实例。在网上找来找去,稀里糊涂的弄好了。。。。。。。。。
下面附上具体的做法:
根据我的业务需求,我要在配置文件中配置一个折扣, 起名为: discount 。然后根据启动不同的配置文件中从,controller中取得该值,进行业务操作。
请看我的配置文件:
1) 这是不同环境的yml文件,注意 文件名 必须为application-{profile}.yml ,定义我的自定义变量:discount

2) application.yml文件如下: 注意:如果整合了Feign,那么需要写 ribbon.eureka.enabled:false ,不然启动报500

3) 目录结构如下:

注意: dis和 nor等会启动多实例的时候会用到
4)Controller 中通过 @Value("discount") 得到配置文件中的值
5)重点来了,怎么启动呢?
我用的是sts ,eclipse也一样的配置,IDEA请自行百度! 请看 在主启动类名上右键 Run as --> Run Configurations

配置上如上信息, 注意等号右边的 dis和nor就是我们的yml文件中的值,点击run,同样的操作,在将dis改为 nor,在启动一次,这样就同时启动了两个不同端口的一个服务提供者,在eureka注册中心就会有一个微服务下有两个提供者,Feign就可以自动负载均衡了。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
RestTemplate如何通过HTTP Basic Auth认证示例说明
这篇文章主要为大家介绍了RestTemplate如何通过HTTP Basic Auth认证的示例说明,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-03-03
使用MappingJackson2XmlView实现JSON到XML的视图转换
MappingJackson2XmlView来实现从JSON到XML格式的响应转换,本文将通过案例,将展示如何将JSON格式的数据转换为XML格式,以满足不同客户端的数据交换需求,需要的朋友可以参考下2024-07-07
SpringBoot整合mybatis-plus实现分页查询功能
这篇文章主要介绍了SpringBoot整合mybatis-plus实现分页查询功能,pringBoot分页查询的两种写法,一种是手动实现,另一种是使用框架实现,现在我将具体的实现流程分享一下,需要的朋友可以参考下2023-11-11


最新评论