【项目实战典型案例】03.fegin调用404情况

简介: 【项目实战典型案例】03.fegin调用404情况

一:背景介绍

生产部署了两台,做了负载,用了同一个nacos命名空间只更新了一台,导致请求到了没有更新的那一台所以出现404问题

二:实操

fegin调用

概念

fegin是一个声明式的http客户端,使用fegin只需要创建一个接口并使用对应注解,就能支持我们服务之间的调用

怎么做

1、首先准备一个使用了nacos的springCloud项目,为这个项目创建两个模块

这里我们将服务一方作为调用方,服务二作为被调用方

2、被调用方操作步骤

被调用方不需要额外增加任何操作,只要有对应的接口就可以了

3、调用方操作步骤

①引入依赖

<!--fengin调用-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>

②创建fegin调用的接口

③启动类上添加@EnableFeignClients注解

④需要的地方进行注入,然后进行使用

4、测试结果

部署多个服务

服务部署

我们把上文提到的serviceTwo服务部署两份,因为是在自己本地上进行的操作,所以需要使用端口号进行一个区分

这样我们就模拟出了,serverTwo服务,部署了两份,我们可以看一下nacos,现在serverTwo项目中有两个实例。这两个服务的默认权重都是1,也就是说如果我再次使用serverOne对serverTwo进行fegin调用,会访问一次9002端口,然后再访问9004端口

服务修改

我们将9004端口对应的服务内容进行一下更改,将serviceTwo/test 接口注释。模拟一下,两个服务不同,即是上文提到的一个服务更新了,另一个服务没有更新,调用到未更新的就会产生404问题

重启后测试

我们将9004端口对应的服务内容进行一下更改,将serviceTwo/test 接口注释。模拟一下,两个服务不同,即是上文提到的一个服务更新了,另一个服务没有更新,调用到未更新的就会产生404问题

三:总结

做事要有全局观


相关文章
|
1月前
|
并行计算 Java 数据处理
SpringBoot高级并发实践:自定义线程池与@Async异步调用深度解析
SpringBoot高级并发实践:自定义线程池与@Async异步调用深度解析
163 0
|
存储 XML 前端开发
“自定义MVC原理解析与示例:打造优雅、可定制化的Java应用程序”(上)
“自定义MVC原理解析与示例:打造优雅、可定制化的Java应用程序”
58 0
|
28天前
|
存储 前端开发 JavaScript
前端的全栈之路Meteor篇(四):RPC方法注册及调用-更轻量的服务接口提供方式
RPC机制通过前后端的`callAsync`方法实现了高效的数据交互。后端通过`Meteor.methods()`注册方法,支持异步操作;前端使用`callAsync`调用后端方法,代码更简洁、易读。本文详细介绍了Methods注册机制、异步支持及最佳实践。
|
设计模式 前端开发 Java
“自定义MVC原理解析与示例:打造优雅、可定制化的Java应用程序”(下)
“自定义MVC原理解析与示例:打造优雅、可定制化的Java应用程序”(下)
30 0
|
NoSQL Java Redis
【项目实战典型案例】15.登录之后我加入的课程调用接口报错
【项目实战典型案例】15.登录之后我加入的课程调用接口报错
【项目实战典型案例】15.登录之后我加入的课程调用接口报错
|
JSON NoSQL 前端开发
SpringBoot定义优雅全局统一Restful API 响应框架完结撒花篇封装starter组件
SpringBoot定义优雅全局统一Restful API 响应框架完结撒花篇封装starter组件
SpringBoot定义优雅全局统一Restful API 响应框架完结撒花篇封装starter组件
|
负载均衡 前端开发 Java
项目实战典型案例3——fegin调用404情况
项目实战典型案例3——fegin调用404情况
641 0
|
存储 缓存 前端开发
项目实战典型案例13——学情页面逻辑问题
项目实战典型案例13——学情页面逻辑问题
66 0
|
存储 缓存 前端开发
【项目实战典型案例】13.学情页面逻辑问题
【项目实战典型案例】13.学情页面逻辑问题
|
负载均衡 Java 数据处理
案例03-fegin调用报404问题
fegin调用报404问题
156 0
下一篇
无影云桌面