开发者学堂课程干货总结——Spring Cloud微服务架构设计与开发实战(三十一)

本文涉及的产品
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: Spring Cloud微服务架构设计与开发实战课时3.10—Spring Cloud Gateway实战接入Nacos服务 。Java Spring Cloud是全球范围内最成熟、最完善、最流行的微服务架构方案体系。被众多的互联网大公司采用,包括阿里巴巴、腾讯、支付宝、网易、IBM、谷歌、京东、百度、滴滴等。电子书+视频为同学带来最佳学习效果,文字、课程链接、图谱地址统统为大家放送了哦!

哈喽各位同学们大家好呀,今天是开发者学院中课程“Spring Cloud微服务架构设计与开发实战”的章节三的Spring Cloud Gateway实战接入Nacos服务”干货总结~这是Spring Cloud 课程的最后一课时,一起学习新课程吧!

课程链接以及图谱地址小编已经为大家指路了,搭配学习效果更佳👇

课程名称:Spring Cloud Gateway实战接入Nacos服务

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

图谱名称:Alibaba Java 技术图谱

图谱地址:https://developer.aliyun.com/graph/java


Spring Cloud Gateway实战接入Nacos服务


各位同学大家好,咱们继续讲解Spring Cloud微服务架构实战系列课程,继续实战Gateway项,Gateway是官方出品的网管工具,接入Nacos注册中心进行集成。目前Nacos国内很多大型公司在用,作为一个分布式数据中心,能够做注册和服务发现治理,还可以做统一配置服务。 

Gateway为什么要和Nacos做集成,因为这两2个都非常优秀,是黄金搭档,Nacos本身不仅支持Spring Cloud,还支持doubleGO语言等一些分布式框架来做统一的注册和治理中心。 

 

  1. Spring Cloud Gateway网关 

Spring Cloud Gateway新特性 

1. 基于Spring 5Project ReactorSpring Boot 2.0构建 

2. 能够匹配任何请求路由。 

3. 特定路由专用Predicate谓词和过滤器Filter特。 

4. 集成Hystrix断路器。 

5. 集成Spring Cloud DiscoveryClient 

6. 易于编写谓词和过滤器 

7. 请求速率限制 

8. 路径重写 

9. 非阻塞API,响应式API,高并发 

  Spring Cloud Gateway 可以和集成微服务的项目直接改造进行集成,但是和Nacos进行搭配需要注意下,因为Nacos有集成模式和单点模式。关于如何进行操作可以回看之前讲解过的Nacos实战。如果起不来可能是环境、配置文件等出现问题。 

 

  1. Spring Cloud Gateway实战集成 Nacos 

image.png 

改造Spring Cloud Gateway具体怎么操作?简单一点的话,就是之间的Gateway项目进行重构,升级,去支持Nacos服务。之前的微服也需要进行重构,去支持Nacos中心服务。只有2个对接成功之后,才可以做后续的工作。 

Nacos本身开发客户端的依赖,客户端项目去集成它,需要具备和Nacos通信的功能。现在Spring Cloud微服架构,不仅可以用麦飞的,Spring Cloud官方的,还有阿里巴巴的,所以架构设计有个多个选择, 而且各个框架在不断的迭代。有更多的优秀的解决方案去落地你的项目。 

image.png 

Spring Cloud Gateway在集成Nacos时,可能出现一些错误,目前还是存Bug的,后续官方会进行修复,需要注意下相关的配置。 

image.png 

image.png 

大家把微服务项目改造完成以后挂接到Gateway上进行一下测试,流程给跑通,进行测试下。 

image.png 

项目进行改造需要把依赖加进去,是Nacos中心的一个对接 

image.png 

启动Nacos服务在win10 LinuxMAC脚本会不太一样。目前截图界面是单点模式,集群模式可以在生成模式进行。 

本地可以弄一个Nacos配置文件,这样子配置数据不会丢失,即使重启了也不会丢失。 

image.png 

图(1 

上图(1)显示重启是出现一个Bug,自动服务注册的时候出现2个,由于这个项目是从早期的Spring Cloud移植过来的,只要删除下图(2)依赖,在重启就可以正常运行。 

image.png 

图(2 

如配置正常是可以在Nacos查看Spring Cloud Gateway,如见图3 

image.png 

3 

后续的微服务改造也是同理的,配置文件进行修改,增加Nacos依赖。 

希望大家在实战过程中去思考,之前讲的那些设计模式和原理。如:Gateway如何监控后台的微服务,谁来执行,多长时间拉一次服务列表,在调用的过程中有没有High Strikes这种现成词的概念,有没有链接池的概念,这里面都会影响到后面的性能问题。 

底层的机制中,Europe默认30秒,实际淘汰一个服务实际是90秒,Europe本身也有服务过期的机制,过期了会从服务列表中删除掉。 

微服务架构师本身不像传统的一些简单的架构只需要做三层或者五层的改动,而是更多的不同框架,并且考虑问题需要综合全面的。微服务架构里面有许多许多的框架和方案,并且每个框架方案的话都需要你自己实际去实战配代码。微服务架构含金量十足,作为分布式架构里面,是一个巅峰,里面包含了几十种设计模式、几十种框架,而且还在不断的迭代进行更新。这里面就需要我们在不断的去学习,逼着大家不断的去进步,是个考验是个挑战,但是同时也是一个很好的机遇。 

相关文章
|
3月前
|
消息中间件 API 持续交付
后端开发中的微服务架构实践####
【10月更文挑战第21天】 本文深入探讨了微服务架构在后端开发中的应用,从基本概念出发,详细阐述了微服务的核心优势、设计原则及关键技术。通过实际案例分析,揭示了微服务如何助力企业应对复杂业务需求,提升系统的可扩展性、灵活性与可靠性。同时,也指出了实施微服务过程中可能面临的挑战,并提供了相应的解决方案和最佳实践。 ####
48 3
|
2月前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
261 69
从单体到微服务:如何借助 Spring Cloud 实现架构转型
|
2月前
|
存储 JavaScript 开发工具
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
本次的.HarmonyOS Next ,ArkTS语言,HarmonyOS的元服务和DevEco Studio 开发工具,为开发者提供了构建现代化、轻量化、高性能应用的便捷方式。这些技术和工具将帮助开发者更好地适应未来的智能设备和服务提供方式。
70 8
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
|
28天前
|
搜索推荐 NoSQL Java
微服务架构设计与实践:用Spring Cloud实现抖音的推荐系统
本文基于Spring Cloud实现了一个简化的抖音推荐系统,涵盖用户行为管理、视频资源管理、个性化推荐和实时数据处理四大核心功能。通过Eureka进行服务注册与发现,使用Feign实现服务间调用,并借助Redis缓存用户画像,Kafka传递用户行为数据。文章详细介绍了项目搭建、服务创建及配置过程,包括用户服务、视频服务、推荐服务和数据处理服务的开发步骤。最后,通过业务测试验证了系统的功能,并引入Resilience4j实现服务降级,确保系统在部分服务故障时仍能正常运行。此示例旨在帮助读者理解微服务架构的设计思路与实践方法。
81 16
|
1月前
|
监控 JavaScript 数据可视化
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
|
2月前
|
运维 监控 Java
后端开发中的微服务架构实践与挑战####
在数字化转型加速的今天,微服务架构凭借其高度的灵活性、可扩展性和可维护性,成为众多企业后端系统构建的首选方案。本文深入探讨了微服务架构的核心概念、实施步骤、关键技术考量以及面临的主要挑战,旨在为开发者提供一份实用的实践指南。通过案例分析,揭示微服务在实际项目中的应用效果,并针对常见问题提出解决策略,帮助读者更好地理解和应对微服务架构带来的复杂性与机遇。 ####
|
2月前
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
190 5
|
2月前
|
消息中间件 运维 安全
后端开发中的微服务架构实践与挑战####
在数字化转型的浪潮中,微服务架构凭借其高度的灵活性和可扩展性,成为众多企业重构后端系统的首选方案。本文将深入探讨微服务的核心概念、设计原则、关键技术选型及在实际项目实施过程中面临的挑战与解决方案,旨在为开发者提供一套实用的微服务架构落地指南。我们将从理论框架出发,逐步深入至技术细节,最终通过案例分析,揭示如何在复杂业务场景下有效应用微服务,提升系统的整体性能与稳定性。 ####
57 1
|
2月前
|
消息中间件 运维 API
后端开发中的微服务架构实践####
本文深入探讨了微服务架构在后端开发中的应用,从其定义、优势到实际案例分析,全面解析了如何有效实施微服务以提升系统的可维护性、扩展性和灵活性。不同于传统摘要的概述性质,本摘要旨在激发读者对微服务架构深度探索的兴趣,通过提出问题而非直接给出答案的方式,引导读者深入
55 1
|
2月前
|
负载均衡 监控 API
后端开发中的微服务架构实践与挑战
本文深入探讨了微服务架构在后端开发中的应用,分析了其优势和面临的挑战,并通过案例分析提出了相应的解决策略。微服务架构以其高度的可扩展性和灵活性,成为现代软件开发的重要趋势。然而,它同时也带来了服务间通信、数据一致性等问题。通过实际案例的剖析,本文旨在为开发者提供有效的微服务实施指导,以优化系统性能和用户体验。