融资项目——通过OpenFeign在分布式微服务框架中实现微服务的远程调用

1.OpenFeign配置

首先,在需要调用其他的微服务的微服务中引入相关依赖。(大多数项目中各微服务需要互相调用,可以直接在每个微服务中引入依赖)

复制代码
        <!--服务调用-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>

当openfeign版本较高时,还需要引入其他依赖,具体详见:

复制代码
https://www.cnblogs.com/yiMro/p/16018149.html

其次,需要在需要调用其他的微服务的微服务的启动类中加入注解@EnableFeignClients。

复制代码
@EnableFeignClients
public class ServiceEmsApplication {
    public static void main(String[] args) {
        SpringApplication.run(ServiceEmsApplication.class, args);
    }
}
  1. 远程调用

首先,可以先在需要调用其他的微服务的微服务中创建client包,包中的接口都是用于远程调用其他的微服务。如下图,CoreUserInfoClient接口可能都是来远程调用和用户信息相关的微服务。

其次,在相应的接口上加入注解@FeignClient,其value值即为需要调用的微服务名称。

随后在接口中写入要调用的接口的URL以及函数。

然后可以在需要调用其他的微服务的微服务中相应的Controller中引入相应的Client(文中则引入)。随后可在相应方法中直接调用接口。

相关推荐
sunxunyong2 小时前
kafka开启Kerberos使用方式
分布式·kafka·linq
喵叔哟2 小时前
30.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--公共代码--用户上下文会话
微服务·架构·.net
风象南3 小时前
用 4 张图解释 CAP 到底在纠结什么
java·分布式·后端
久念祈10 小时前
C++ - 仿 RabbitMQ 实现消息队列--服务端核心模块实现(四)
分布式·rabbitmq
GEM的左耳返12 小时前
Java面试全攻略:Spring生态与微服务架构实战
spring boot·redis·spring cloud·微服务·kafka·java面试
你的人类朋友12 小时前
❤️‍🔥微服务的拆分策略
后端·微服务·架构
白鹭15 小时前
基于LNMP架构的分布式个人博客搭建
linux·运维·服务器·网络·分布式·apache
不辉放弃15 小时前
kafka的消费者负载均衡机制
数据库·分布式·kafka·负载均衡
angushine16 小时前
logstash采集springboot微服务日志
spring boot·微服务·linq
null不是我干的17 小时前
基于黑马教程——微服务架构解析(一)
java·微服务·架构