补知识点:Feign、Nacos配置中心(命名空间、配置分组)

一、Feign的应用

和前面的Feign笔记是一样的,不过这里更深刻的理解一下

 使用Feign的整体步骤就分为以下几个步骤:

1、引入open-feign依赖坐标

2、编写一个接口,告诉springCloud这个接口需要调用远程服务

3、在启动类当中开启远程调用功能注解

4、自动装配接口,调用功能方法

具体步骤演示如下所示:

 假定现在有两个微服务,一个是gulimall-coupon服务、一个是gulimall-member服务,现在的需求是:

        gulimall-member服务向gulimall-coupon服务发送远程服务调用,简单的理解就是说gulimall-member服务模块想要调用到gulimall-coupon服务模块中的某个功能

第一步:引入open-feign依赖坐标

        比如说A服务远程调用B服务,那么就在A服务的pom依赖坐标下导入open-feign依赖坐标,我们这里是gulimall-member服务远程调用gulimall-coupon服务,因此就需要在gulimall-member服务中导入依赖坐标

 

第二步:编写一个Fegin接口

假定gulimall-member服务想要远程调用的就是gulimall-coupon服务中的下面这个功能:

 

确定好gulimall-member服务想要远程调用的某个服务的某个功能之后,那么就可以在gulimall-member服务当中编写Feign接口了:

 

第三步:在启动类当中开启远程调用功能注解

A服务远程调用B服务的话,就在A服务启动类上加上@EnableFeignClients注解即可。

 

第四步:测试

 

 

二、Nacos配置中心 - 命名空间

 

在实际的开发过程中,我们肯定不会只用这一个public为名的空间来放置配置文件,毕竟简单的来说,一旦微服务的配置文件过多之后如果都放入在这一个public为名的空间中的话,那么就会非常的混乱。

2.1、使用不同命名空间场景1

并且我们项目上线的过程中,肯定也要经过开发、测试、生产、上线等一系列的操作,那么我们肯定就需要多个命名空间来存放配置文件了,毕竟我们测试的时候使用到的配置文件命令空间总不能和开发、上线时候用的命名空间是同一个吧,那不就完犊子了吗,太乱了。

因此我们就可以创建出多个不同环境的命名空间,然后用来存放配置文件 

创建不同环境的命名空间操作过程:

 

 通过上面的方式创建出多个环境空间之后:

 

 此时的话,比如我们点击dev进入到开发环境,我们知道我们这个dev开发环境是刚刚新创建的,所以还没有添加一些配置文件,那么现在的话我们就可以把开发中所用到的一些配置文件创建到dev开发环境空间当中了(创建的过程和在public环境下一样,点击加号,然后创建配置文件即可):

 

 

 

nacos配置中心中dev开发环境中有了配置文件之后,我们该如何在微服务中获取到开发环境中的配置文件数据呢:

 

 

其他的几个不同的环境空间的使用方式和上面相同,这里就不再演示了~

2.2、使用不同命名空间场景2

我们也可以每个微服务使用一个不同的命名空间,这样就会更加的清晰,比如我们gulimall-coupon服务,给他也搞一个命名空间,这样的话这个服务使用到的nacos配置中心的配置文件就放入到该服务对应的命名空间中去,以后用的时候就直接去这个命名空间中找想用的配置文件就可以了。

使用的操作过程和上面一样,也是新创建好命名空间后,然后在服务的bootstrap配置文件中添加一个namespace属性 配置上对应的命名空间id即可,其他的操作都一样。

 

三、Nacos配置中心 - 配置分组

 

我们现在比如说在dev空间下再创建一个gulimall-coupon.properties为名的配置文件(不再是上面的组):

 

 

现在有个问题就是:我们该如何获取到1111组下的该配置文件数据信息呢:

注意:如果在bootstrap配置文件中,不加这个group指定组名的话,就会默认指定DEFAULT_GROUP为名的组名,那么就会获取到的是DEFAULT_GROUP为组名的配置文件中的数据信息,不再是1111为组名的配置文件中的数据信息

 同理如果想获取默认情况下的组中的配置文件中的数据的话,只需要把那个组名换成默认的那个组名即可。

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Feign是一个声明式的HTTP客户端工具,可以用于进行服务的远程调用。而Nacos是一个服务发现和配置管理平台。通过结合使用FeignNacos,可以实现微服务架构中的服务间通信以及服务的注册与发现功能。 要使用Feign进行服务的远程调用,首先需要下载并安装Nacos服务器。***html)上找到下载链接和安装指南。 在安装完成后,需要进行一些配置才能使用Feign进行远程调用。首先,需要添加Nacos的依赖到项目中。可以在项目的pom.xml文件中添加以下依赖: ``` <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>2.2.1.RELEASE</version> </dependency> ``` 接下来,需要配置Nacos的服务地址和定义服务名。可以在application.yml或application.properties文件中添加以下配置: ``` server: port: 8080 spring: application: name: feign-nacos-consumer cloud: nacos: discovery: server-addr: localhost:8848 ``` 最后,启动消费者服务即可开始使用Feign进行远程调用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【微服务】分布式组件 Nacos 结合 Feign 的使用](https://blog.csdn.net/liuwanqing233333/article/details/127931040)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [FeignNacos使用](https://blog.csdn.net/weixin_43811057/article/details/126709194)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值