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

简介: Spring Cloud微服务架构设计与开发实战课时1.11—Spring Cloud2020发布,重大变化与提醒 。Java Spring Cloud是全球范围内最成熟、最完善、最流行的微服务架构方案体系。被众多的互联网大公司采用,包括阿里巴巴、腾讯、支付宝、网易、IBM、谷歌、京东、百度、滴滴等。电子书+视频为同学带来最佳学习效果,文字、课程链接、图谱地址统统为大家放送了哦!

哈喽各位同学们大家好呀,小编今天带着开发者学院中课程“Spring Cloud2020发布,重大变化与提醒”干货总结来了~一起学习新课程吧!

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

课程名称:Spring Cloud2020发布,重大变化与提醒

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

图谱名称:Alibaba Java 技术图谱

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


Spring Cloud2020发布,重大变化与提醒


一 、Spring Cloud2020发布及重大变化 

  1. Spring Cloud 2020发布 

image.png 

Spring Cloud 2020重新规划了发展路线版本号,命名规则已经改成了年度+扩展版本号,作为一个微服务框架来说,它里面有很多成熟的设计模式思想包括算法可以供大家借鉴。因为大家在开源社区学一些技术时,很重要的就是研究底层的代码和设计思想设计模式还有算法。2020这个版本采用的命名也是伦敦的一个地点名,但我们这里面实际版本改成数字形式。 

  1. Spring Cloud与Spring Boot版本对应关系 

image.png 

目前新版本Spring Cloud版本2020为2020年12月份发布,Spring Boot对应版本为2.4.X目前课程为2.3版本,但是实际不影响。新项目请尽量使用2.1.x以后版本,实际操作中可选表格中绿色部分,Spring Cloud Dalston, Edgware, and Finchley由于时间较久部分不在支持. 不要太旧也不要太新,新版本刚发布会有很多坑不完善。 

 

  1. Spring Cloud2020重大变化 
  2. 架构选型注意版本差别 
  3. Spring Cloud 2020基于 Spring Boot 2.4,不支持低版本 
  4. 删除部分Spring Cloud Netflix组件 
  5. Bootstrap 默认禁用,可以使用依赖兼容老项目 

org.springframework.cloud:spring-cloud-starter-bootstrap 

  1. Spring Cloud LoadBalancer 支持服务端统计 
  2. Spring Cloud Kubernetes 新增响应式 Java Client、LB统计 
  3. Spring Cloud Openfeign支持Spring Cloud CircuitBreakers 
  4. Spring Cloud Security代码移到独立的项目中 
  5. Spring Cloud Gateway支持LoadBalancer 统计 
  6. Eureka Client的RestTemplate 支持TLS属性 

架构师也是很重要的,要有技术深度也有技术广度,见多识广,你才知道好坏,你只知道一个框架,你很难分辨出它的好或者坏。 

 

  1. Spring Cloud2020以下项目从spring-cloud-netflix删除 

• spring-cloud-netflix-archaius 

• spring-cloud-netflix-concurrency-limits 

• spring-cloud-netflix-core 

• spring-cloud-netflix-dependencies 

• spring-cloud-netflix-hystrix 

• spring-cloud-netflix-hystrix-contract 

• spring-cloud-netflix-hystrix-dashboard 

• spring-cloud-netflix-hystrix-stream 

• spring-cloud-netflix-ribbon 

• spring-cloud-netflix-sidecar 

• spring-cloud-netflix-turbine 

• spring-cloud-netflix-turbine-stream 

• spring-cloud-netflix-zuul 

• spring-cloud-starter-netflix-archaius 

• spring-cloud-starter-netflix-hystrix 

• spring-cloud-starter-netflix-hystrix-dashboard 

• spring-cloud-starter-netflix-ribbon 

• spring-cloud-starter-netflix-turbine 

• spring-cloud-starter-netflix-turbine-stream 

• spring-cloud-starter-netflix-zuul 

• Support for ribbon, hystrix and zuul was removed across the release train projects 

 

主要原因还是两个公司的利益纷争,一个要可能要考虑商业化,另外一个贡献了大量代码,公司掏钱养了员工做,这个项目源码贡献出来以后,没得到任何好处。整个生态来看的话,应该还是支持更多公司参与,这样的才能促进整个微服务架构社区的繁荣发展。 

 

二 、Spring Cloud2020提醒 

  1. Spring Cloud 2020 微服务架构学习提醒 

学习建议 

•建议学习Greenwich以上( 2.1.X版本)版本 

• Spring Cloud Netflix Greenwich以上( 2.1.X版本)相对成 

熟 

• Spring Cloud Alibaba 相对成熟,部分组件可以替换 

•企业使用多,踩坑基本完毕,容易落地架构 

•新版本2020可以作为扩展学习 

国内很多公司选择Netflix Greenwich这相对来说比较好用。一般架构设计的话不会选最旧的,也不会选最新的,一般的话选隔个一年半年的时间的检验期的这样一个版本是比较稳妥。 

 

  1. Spring Cloud 2020 微服务架构设计提醒慎重选择新版本 

•企业微服务架构大量的1.5.X版本、2.0.X版本 

•推荐架构设计使用Greenwich以上( 2.1.X版本) •Spring Cloud Netflix相对成熟 

•Spring Cloud Alibaba相对成熟 

•新的Spring Cloud2020版本需要一段时间检验,踩坑 

框架体系完善度、成熟度,文档丰富度、规范度等都是我们选型很重要的考虑,有些语言压根没有微服务完整的微服务框架。 

相关文章
|
算法 Java 微服务
【SpringCloud(1)】初识微服务架构:创建一个简单的微服务;java与Spring与微服务;初入RestTemplate
微服务架构是What?? 微服务架构是一种架构模式,它提出将单一应用程序划分为一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。 每个服务允许在其独立的进程中,服务于服务间采用轻量级的通信机制互相协作(通常是Http协议的RESTful API或RPC协议)。 每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建
892 126
|
负载均衡 算法 Java
【SpringCloud(2)】微服务注册中心:Eureka、Zookeeper;CAP分析;服务注册与服务发现;单机/集群部署Eureka;连接注册中心
1. 什么是服务治理? SpringCloud封装了Netfix开发的Eureka模块来实现服务治理 在传统pc的远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理比较复杂,所以需要使用服务治理,管理服务于服务之间依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册
639 0
|
负载均衡 Java API
《深入理解Spring》Spring Cloud 构建分布式系统的微服务全家桶
Spring Cloud为微服务架构提供一站式解决方案,涵盖服务注册、配置管理、负载均衡、熔断限流等核心功能,助力开发者构建高可用、易扩展的分布式系统,并持续向云原生演进。
|
监控 安全 Java
Spring Cloud 微服务治理技术详解与实践指南
本文档全面介绍 Spring Cloud 微服务治理框架的核心组件、架构设计和实践应用。作为 Spring 生态系统中构建分布式系统的标准工具箱,Spring Cloud 提供了一套完整的微服务解决方案,涵盖服务发现、配置管理、负载均衡、熔断器等关键功能。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
768 1
|
jenkins Java 持续交付
使用 Jenkins 和 Spring Cloud 自动化微服务部署
随着单体应用逐渐被微服务架构取代,企业对快速发布、可扩展性和高可用性的需求日益增长。Jenkins 作为领先的持续集成与部署工具,结合 Spring Cloud 提供的云原生解决方案,能够有效简化微服务的开发、测试与部署流程。本文介绍了如何通过 Jenkins 实现微服务的自动化构建与部署,并结合 Spring Cloud 的配置管理、服务发现等功能,打造高效、稳定的微服务交付流程。
1365 0
使用 Jenkins 和 Spring Cloud 自动化微服务部署
|
Kubernetes Java 微服务
Spring Cloud 微服务架构技术解析与实践指南
本文档全面介绍 Spring Cloud 微服务架构的核心组件、设计理念和实现方案。作为构建分布式系统的综合工具箱,Spring Cloud 为微服务架构提供了服务发现、配置管理、负载均衡、熔断器等关键功能的标准化实现。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
1069 0
|
Java Spring 容器
SpringBoot自动配置的原理是什么?
Spring Boot自动配置核心在于@EnableAutoConfiguration注解,它通过@Import导入配置选择器,加载META-INF/spring.factories中定义的自动配置类。这些类根据@Conditional系列注解判断是否生效。但Spring Boot 3.0后已弃用spring.factories,改用新格式的.imports文件进行配置。
1634 0
|
人工智能 Java 测试技术
Spring Boot 集成 JUnit 单元测试
本文介绍了在Spring Boot中使用JUnit 5进行单元测试的常用方法与技巧,包括添加依赖、编写测试类、使用@SpringBootTest参数、自动装配测试模块(如JSON、MVC、WebFlux、JDBC等),以及@MockBean和@SpyBean的应用。内容实用,适合Java开发者参考学习。
1587 0
|
前端开发 Java 数据库
微服务——SpringBoot使用归纳——Spring Boot集成Thymeleaf模板引擎——Thymeleaf 介绍
本课介绍Spring Boot集成Thymeleaf模板引擎。Thymeleaf是一款现代服务器端Java模板引擎,支持Web和独立环境,可实现自然模板开发,便于团队协作。与传统JSP不同,Thymeleaf模板可以直接在浏览器中打开,方便前端人员查看静态原型。通过在HTML标签中添加扩展属性(如`th:text`),Thymeleaf能够在服务运行时动态替换内容,展示数据库中的数据,同时兼容静态页面展示,为开发带来灵活性和便利性。
688 0