融资项目——通过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(文中则引入)。随后可在相应方法中直接调用接口。

相关推荐
未秃头的程序猿2 小时前
从零到一:深入浅出分布式锁原理与Spring Boot实战(Redis + ZooKeeper)
spring boot·分布式·后端
eSsO KERF4 小时前
RabbitMQ之交换机
分布式·rabbitmq·ruby
Albert Edison5 小时前
【RabbitMQ】Topics 通配符模式(使用案例)
分布式·rabbitmq
yaoyouzhong14 小时前
分布式与集群,二者区别是什么?
分布式
橙露15 小时前
SpringBoot 整合 MinIO:分布式文件存储上传下载
spring boot·分布式·后端
Ulyanov17 小时前
Apache Kafka在雷达仿真数据流处理中的应用
分布式·python·kafka·apache·雷达电子战
全栈软件开发19 小时前
企业年报服务系统/小微服务助手小程序源码带搭建教程
微服务·年报小程序源码
Ssan PRIN19 小时前
深度掌握 RabbitMQ 消息确认(ACK)机制,确保消息万无一失
分布式·rabbitmq
切糕师学AI20 小时前
深入理解 CAP 定理:分布式系统中的一致性、可用性与分区容错
分布式·cap
亚历克斯神1 天前
Java 代码质量与静态分析:2026 实战指南
java·spring·微服务