3. 7 Spring Cloud 网关 Zuul 集成 Nacos 注册中心| 学习笔记

简介: 快速学习 3. 7 Spring Cloud 网关 Zuul 集成 Nacos 注册中心。

开发者学堂课程【Spring Cloud 微服务架构设计与开发实战 3. 7 Spring Cloud 网关 Zuul 集成 Nacos 注册中心】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/60/detail/1100


3.7 Spring Cloud 网关 Zuul 集成 Nacos 注册中心

 

内容介绍

一、 网关 Zuul 集成 Nacos 注册中心

二、 实战操作

 

一、网关 Zuul 集成 Nacos 注册中心

本节课主要讲解 Spring Cloud 网关 Zuul 如何集成 Nacos 注册中心Nacos 的功能十分强大,在前面的课程中已经学习过。

本节课主要对整体的 Spring Cloud 微服务架构做升级改造,这里包括微服务从基础开发到配置优化,集成原理以及设计模式,还有使用最新框架改造的过程。Spring Cloud2.0,2.1等版本也可以逐步进化。

//引用必须修改 Zuul 的配置代码

server.port=8201

spring.application.name=taobao-nacos-microservice。

#Nacos

spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

调用,检查 zuul 是否上线,通过 zuul 能否调用后台的微服务,路由规则有没有变掉,如果变掉就比较麻烦。

 

二、实战操作

通过 zuul 测试微服务 API 调用

//zuul Nacos 的引用,因为 zuul 不是和 eureak 进行集成,而是和 Nacos 进行集成。

//从中心地址修改配置。

spring.application.name=zuulproxy

server.port=10000

#Nacos

spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

在这里还需要使用到 @EnableDiscoveryClient。

保证之前的 Nacos 中心起来,必须有熔断,一般在 zuul 上做代理,所以有可能在 zuul 上做熔断。

如果从0开始改造项目,需要注意版本问题,目前使用的版本是2.3.7Nacos 用的版本是2.2.3,会有版本差别的问题,过高的版本可能会不支持。Nacos 和 zuul 的兼容性也需要注意。

查看之前使用的 zuul 版本是2.3.7

//修改配置可以通过直接复制代码进行改造,项目命名为javaSpringCloud000000zuulproxyNacos,将 Nacos 的代码复制过来,然后修改配置文件,要注意版本兼容性。只修改配置文件即可,其他内容都不用进行修改。

//修改配置文件,删除掉 eureak 相关的代码。

spring.application.name=zuulproxy

server.port=10000

#nacos

spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

运行报错,原因是 eureak 没有删除掉。理论上这里不需要 eureak,只需要 Nacos

重新启动,运行报错,报错信息的意思是:考虑在 config 中定义一个接口,这个配置没有。出错原因是默认的包名和自己定义的包名重名了,对包名进行修改,改为 cn.alibaba

重新启动,运行成功。查看注册中心,zuulproxy 上线了,通过 zuul 可以调后台的淘宝服务。调用方法:原来输的是10000,这里需要修改 zuul 的调动策略。如果使用 localost:10000/microservice/hello 调用就会出错。

正确的调用是把微服务地址放在中间,加上参数  hi,如下所示:localost:10000/Taobao-nacos-microservice/hi 通过网关调用,加上服务偏移,服务实际的方法名,即可调用成功。

调用 hello 的方法:

localost:10000/Taobao-nacos-microservice/hello/java 

或者:localost:10000/Taobao-nacos-microservice/hello/1

或者:localost:10000/Taobao-nacos-microservice/hello/frank

或者:localost:10000/Taobao-nacos-microservice/hello/Alibaba

调用结果:只上了两个服务实例也实现了负载均衡。 

以上即是实现了注册中心和网关代理的集成,并且对其做了升级改造。

相关文章
|
10月前
|
搜索推荐 JavaScript Java
基于springboot的儿童家长教育能力提升学习系统
本系统聚焦儿童家长教育能力提升,针对家庭教育中理念混乱、时间不足、个性化服务缺失等问题,构建科学、系统、个性化的在线学习平台。融合Spring Boot、Vue等先进技术,整合优质教育资源,提供高效便捷的学习路径,助力家长掌握科学育儿方法,促进儿童全面健康发展,推动家庭和谐与社会进步。
|
监控 Java 应用服务中间件
微服务——SpringBoot使用归纳——为什么学习Spring Boot
本文主要探讨为什么学习Spring Boot。从Spring官方定位来看,Spring Boot旨在快速启动和运行项目,简化配置与编码。其优点包括:1) 良好的基因,继承了Spring框架的优点;2) 简化编码,通过starter依赖减少手动配置;3) 简化配置,采用Java Config方式替代繁琐的XML配置;4) 简化部署,内嵌Tomcat支持一键式启动;5) 简化监控,提供运行期性能参数获取功能。此外,从未来发展趋势看,微服务架构逐渐成为主流,而Spring Boot作为官方推荐技术,与Spring Cloud配合使用,将成为未来发展的重要方向。
614 0
微服务——SpringBoot使用归纳——为什么学习Spring Boot
|
存储 Java 数据库
Spring Boot 注册登录系统:问题总结与优化实践
在Spring Boot开发中,注册登录模块常面临数据库设计、密码加密、权限配置及用户体验等问题。本文以便利店销售系统为例,详细解析四大类问题:数据库字段约束(如默认值缺失)、密码加密(明文存储风险)、Spring Security配置(路径权限不当)以及表单交互(数据丢失与提示不足)。通过优化数据库结构、引入BCrypt加密、完善安全配置和改进用户交互,提供了一套全面的解决方案,助力开发者构建更 robust 的系统。
553 0
|
安全 Java 数据库
Spring Boot 框架深入学习示例教程详解
本教程深入讲解Spring Boot框架,先介绍其基础概念与优势,如自动配置、独立运行等。通过搭建项目、配置数据库等步骤展示技术方案,并结合RESTful API开发实例帮助学习。内容涵盖环境搭建、核心组件应用(Spring MVC、Spring Data JPA、Spring Security)及示例项目——在线书店系统,助你掌握Spring Boot开发全流程。代码资源可从[链接](https://pan.quark.cn/s/14fcf913bae6)获取。
2121 3
|
Java Spring
Spring框架的学习与应用
总的来说,Spring框架是Java开发中的一把强大的工具。通过理解其核心概念,通过实践来学习和掌握,你可以充分利用Spring框架的强大功能,提高你的开发效率和代码质量。
365 20
|
Cloud Native Java Nacos
springcloud/springboot集成NACOS 做注册和配置中心以及nacos源码分析
通过本文,我们详细介绍了如何在 Spring Cloud 和 Spring Boot 中集成 Nacos 进行服务注册和配置管理,并对 Nacos 的源码进行了初步分析。Nacos 作为一个强大的服务注册和配置管理平台,为微服务架构提供
5154 14
|
Java Maven Spring
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
这篇文章介绍了在IntelliJ IDEA社区版中创建Spring Boot项目的三种方法,特别强调了第三种方法的详细步骤。
17271 0
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
|
前端开发 Java 开发者
Spring生态学习路径与源码深度探讨
【11月更文挑战第13天】Spring框架作为Java企业级开发中的核心框架,其丰富的生态系统和强大的功能吸引了无数开发者的关注。学习Spring生态不仅仅是掌握Spring Framework本身,更需要深入理解其周边组件和工具,以及源码的底层实现逻辑。本文将从Spring生态的学习路径入手,详细探讨如何系统地学习Spring,并深入解析各个重点的底层实现逻辑。
686 9
|
前端开发 Java 数据库
SpringBoot学习
【10月更文挑战第7天】Spring学习
341 9
|
XML Java 数据格式
Spring学习
【10月更文挑战第6天】Spring学习
214 1