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

相关推荐
Database_Cool_8 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
REST_302713 小时前
告别Excel孤岛:一款任务链路可视化工具带来的真实改变
大数据·微服务·云计算·编辑器·excel·动态规划
beibeix201514 小时前
CppMicroServices 核心概念:动态服务注册与模块化系统
微服务·mitk
微三云 - 廖会灵 (私域系统开发)14 小时前
电商系统从单体到微服务拆分实践:拆什么、怎么拆、拆完后怎么办
微服务·云原生·架构
肥胖小羊17 小时前
解决企业微信 AccessToken 刷新并发冲突的分布式锁机制实践
分布式·企业微信
guslegend18 小时前
领域驱动设计,微服务设计为什么要选择DDD?
微服务·云原生·架构
VortMall20 小时前
全维度打磨细节体验,赋能商城稳定有序运营|VortMall 微服务商城 v1.3.11 版本发布
java·微服务·云原生·架构·商城系统·开源商城·vortmall
豆瓣鸡2 天前
Guava RateLimiter 限流实战:从令牌桶原理到 Nacos 动态配置
spring boot·微服务·nacos·guava
风中凌乱2 天前
kafka新版本集群的安装与部署
分布式·kafka
SLD_Allen2 天前
大规模分布式AI训练基础设施
人工智能·分布式·模型训练