负载均衡组件 -loadBalancer 无法获取服务端信息问题

负载均衡组件 -loadBalancer 无法获取服务端信息问题

客户端出现以上截图问题,可以考虑以下方案

  1. 负载均衡是否开启配置

    java 复制代码
    @Configuration
    public class RestTemplateConfig {
        @Bean
        @LoadBalanced
        public RestTemplate restTemplate() {
            return new RestTemplate();
        }
    }
  2. 用了@Controller而不是@RestController

    @Controller是返回视图的,不会把方法返回值直接作为 HTTP 响应

    即使接口注册了,也会返回 404(找不到视图),需要搭配@ResponseBody

    修正方法:直接用@RestController(等价于@Controller + @ResponseBody

  3. @GetMapping路径拼写错误

    比如代码里写的是/api/consumer/call-provider,但你访问的是/api/consum/call-provider(少了e

    或者多了空格、大小写错误(Spring Boot 路径默认大小写敏感)

    修正方法:严格核对代码路径和浏览器访问路径,完全一致

  4. 端口 / 服务启动错误

    你以为启动的是 8081 端口的 consumer 服务,但实际启动的是其他服务,或者服务没启动成功

    验证:访问localhost:8081,看是否返回 Spring Boot 的默认错误页(确认服务正常运行在 8081)

    修正方法:在 IDEA 的 Run 窗口确认Started ConsumerApplication日志,端口是8081

  5. 包路径不匹配

    你的启动类 ConsumerApplication 所在包:com.example.consumer

    你的配置类 RestTemplateConfig 所在包:net.togogo.controller(和启动类完全不在同一个包,也不是子包)

    Spring Boot 默认只扫描启动类所在包及其子包 ,所以 RestTemplateConfig 完全被忽略了,@LoadBalanced 修饰的 RestTemplate Bean 根本没被创建!

    ConsumerControllerTestnet.togogo.controller 包下,虽然加了 @RestController,但因为 RestTemplate Bean 不存在,注入失败,服务直接启动报错(exit code 1)

    RestTemplateConfig 上标了 no usages,就是因为 Spring 根本没加载这个类,IDEA 也识别到它没被使用。

    修正方法:

    1. 调整包路径 让其在统一路径或统一路径子包下
      A 也识别到它没被使用。

    修正方法:

    1. 调整包路径 让其在统一路径或统一路径子包下
    2. 给启动类加 @ComponentScan 手动指定扫描包
相关推荐
闲云野鹤在人间10 小时前
docker 入门 | 第7章 容器监控 和 第8章 容器日志 详解
运维·docker·容器·架构·云计算
亚川楼宇自控系统数据中心厂家10 小时前
IBMS 集成如何打通数据中心的子系统数据孤
运维
蓝速科技11 小时前
桌面双屏翻译机量产调试:三类场景兼容性破局方案丨蓝速科技
运维·数据库·人工智能·科技·技术分享
见闻小天地11 小时前
脱硫脱硝塔选变频器避坑指南:四方DL500变频器使用体验分享
大数据·运维·人工智能·业界资讯
吴声子夜歌11 小时前
Shell编程实例——内务及管理任务(一)
linux·运维·shell
wdfk_prog12 小时前
ROS教程10:从 gtest 到 rostest——Unit Test、Node 集成测试、rosbag 与 rqt 验证闭环
运维·缓存·docker·容器·ros
吴声子夜歌12 小时前
Shell编程实例——高级脚本编程(一)
linux·运维·网络·shell
Huangjin007_13 小时前
【Linux 系统篇(二十一)】进程(九):进程等待 wait/waitpid、status状态参数
linux·运维·服务器
螺蛳粉 螺蛳粉14 小时前
mysql的备份与恢复
linux·运维·数据库·mysql
可乐鸡翅yeah_14 小时前
混合内容 Mixed‑Content 安全策略,HLS HTTPS 页面加载 HTTP 资源排错实战
运维·ffmpeg·音视频·媒体·m3u8