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

相关推荐
迅翼SwiftWing6 小时前
编队系列(二)|固定翼如何依靠邻居信息保持队形?一致性控制、通信拓扑与分布式仿真实现,附仿真代码
分布式
ly76896 小时前
幂等消费者与重试副作用:Kafka 端点接入时的去重边界
分布式·kafka·linq·apache camel·幂等消费者·重试副作用·去重边界
qq_452396236 小时前
第三篇:《从 ZooKeeper 到 KRaft 的迁移实战:前置条件、三阶段流程与回滚策略》
分布式·zookeeper·云原生
真上帝的左手1 天前
30. 技术专题-‌应用框架组件-关系型数据库-MySQL-Mybatis
数据库·分布式·mysql·中间件·mybatis
程序猿乐锅1 天前
万字详解Single-flight(单飞模式)
java·开发语言·分布式·后端·学习·single-flight
sunny06601 天前
推理 INFRA 方法论(2):分布式推理:TP、DP、EP、CP 与 PP 的取舍
人工智能·分布式
字节探索1 天前
Redis 分布式锁:从 SETNX 误删到看门狗自动续期的原理与实践
redis·分布式
真上帝的左手1 天前
30. 技术专题-‌应用框架组件-缓存-Redis
数据库·redis·分布式·缓存·中间件
斯普信专业组1 天前
Kafka 3.9.1 三节点集群部署方案(ZooKeeper 模式)
分布式·zookeeper·kafka
真上帝的左手1 天前
30. 技术专题-‌应用框架组件-搜索引擎-ES
大数据·分布式·elasticsearch·搜索引擎·中间件