分布式微服务框架SpringCloud Alibaba学习(1)

news2025/7/7 6:03:13

 springCloud 发展历史以及SpringCloud Alibaba概述

一.Why SpringCloud Alibaba?

1.微服务cloud新闻:

2020-12-22日Spring 官方博客宣布,Spring Cloud 2020.0.0正式发布。2020.0.0是第一个使用新的版本号命名方案的Spring Cloud 发行版本。在此之前Spring Cloud 使用英国伦敦地铁站的命名方式来命名一个大版本(train version),如果不按照新的版本号命名的话,本次的版本号应该是Ilford

2.随后本次更新却正式开启了Spring Cloud Netflix 体系的终结进程。Netflix 公司是目前微服务落地中最成功的公司。它开源了诸如EurekaHystrixZuulFeignRibbon 等等广大开发者所知微服务套件,统称为Netflix OSS

在最近的几年的《SpringCloud 日志》中,有一段新闻信息描述:

Spring Cloud Netflix项目进入维护模式

最近,Netflix宣布Hystrix进入维护模式。Ribbon自2016年以来一直处于类似状态。虽然Hystrix和Ribbon现在处于维护模式,但它们仍在Netflix大规模部署。

Hystrix仪表盘和涡轮机已被阿特拉斯取代。这些项目的最后一次承诺分别是2年前和4年前。Zuul 1和Archaius 1都被不向后兼容的更高版本所取代。

以下Spring Cloud Netflix模块和相应的启动器将进入维护模式:

  1. spring-cloud-netflix-archaius
  2. spring-cloud-netflix-hystrix-contract
  3. spring-cloud-netflix-hystrix-dashboard
  4. spring-cloud-netflix-hystrix-stream
  5. spring-cloud-netflix-hystrix
  6. spring-cloud-netflix-ribbon
  7. spring-cloud-netflix-turbine-stream
  8. spring-cloud-netflix-turbine
  9. spring-cloud-netflix-zuul

这不包括Eureka或并发限制模块。

什么是维护模式?将模块置于维护模式意味着SpringCloud团队将不再向模块添加新功能。我们将修复拦截器漏洞和安全问题,我们还将考虑和审查来自社区的小拉取请求。

3.在2019年的在 SpringOne 2019 大会中,Spring Cloud 宣布 Spring Cloud Netflix项目进入维护模式 ,并在2020年移除相关的Netflix OSS 组件。

言外之意Spring Cloud宣布Spring Cloud Netflix项目不再更新Spring Cloud Netflix的组件,只是对现有的组件进行维护修复bug。背后深层次的原因是alibaba跟Spring cloud两家巨头竞争,最后pring cloud觉得两个巨头竞争自己没有优势,于是跟阿里巴巴合作,到此spring Cloud Alibaba成功进入spring社区,因此spring Cloud  Alibaba也是国内首个进入spring社区的开源项目。

二.What is Spring Cloud Alibaba?

 主要功能

  • 服务限流降级 :默认支持 WebServlet、WebFlux, OpenFeign、RestTemplate、Spring Cloud Gateway, Zuul, Dubbo 和 RocketMQ 限流降级功能的接入,可以在运行时通过控制台实时修改限流降级规则,还支持查看限流降级 Metrics 监控。

  • 服务注册与发现 :适配 Spring Cloud 服务注册与发现标准,默认集成了 Ribbon 的支持。

  • 分布式配置管理 :支持分布式系统中的外部化配置,配置更改时自动刷新。

  • 消息驱动能力 :基于 Spring Cloud Stream 为微服务应用构建消息驱动能力。

  • 分布式事务 :使用 @GlobalTransactional 注解, 高效并且对业务零侵入地解决分布式事务问题。

  • 阿里云对象存储 :阿里云提供的海量、安全、低成本、高可靠的云存储服务。支持在任何应用、任何时间、任何地点存储和访问任意类型的数据。

  • 分布式任务调度 :提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。同时提供分布式的任务执行模型,如网格任务。网格任务支持海量子任务均匀分配到所有 Worker(schedulerx-client)上执行。

  • 阿里云短信服务 :覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。

组件

  • [Sentinel] :阿里巴巴源产品,把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

    [Nacos] :一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

    [RocketMQ] :一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。

    [Dubbo] :Apache Dubbo™ 是一款高性能 Java RPC 框架。

    [Seata] :阿里巴巴开源产品,一个易于使用的高性能微服务分布式事务解决方案。

    [Alibaba Cloud OSS] : 阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。

    [Alibaba Cloud SchedulerX]: 阿里中间件团队开发的一款分布式任务调度产品,提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。

    [Alibaba Cloud SMS] : 覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。

三.总结:

替代使用原生的Springcloud的,转而使用SpringCloud Alibaba 技术原因归于以下几点:

  • Eureka 闭源,并不再维护。SpringCloud netflix系列不再迭代更新。
  • 相比较SpringCloud alibaba,原生SpringCloud 配置项过多,不利于高效开发,同时SpringCloud alibaba的粒度和兼容性比SpringCloud netflix系列更有优势

具体区别在后续会慢慢总结,欢迎关注和评论哦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/109273.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

上次面试跪在了Redis上,刷完腾讯云大神亲码的“redis深度笔记”,终面进腾讯

前言 作为这个时代码代码的秃头人员,对Redis肯定是不陌生的,如果连Redis都没用过,还真不好意思出去面试,指不定被面试官吊打多少次。 毕竟现在互联网公司和一些创业公司都要用到Redis,像亚马逊、谷歌、阿里、腾讯都要使…

哈啰出行高质量故障复盘法:“3+5+3”(附模板)

# 一分钟精华速览 #故障复盘指的是及时把过去发生的错误,最大程度转化为未来可以规避的办法,其核心是不断减少失败因子繁衍的温床,将它们牢牢地掌控在不至于引发危机的范围之中。 作为国民基础设施的哈啰出行,在保障超5.3亿注册用…

按照等分份数或者分割点索引号列表将一个数组拆分为多个数组hsplit()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 按照等分份数或者分割点索引号列表 将一个数组拆分为多个数组 hsplit() [太阳]选择题 以下关于python代码表述有误的一项是? import numpy as np myArraynp.array([[0,1,2,3,4,5],[10,11,1…

“0基础、学历无优势、逻辑能力一般……”能转行做程序员吗?

此前,拉勾数据研究院对程序员群体做了一次深入调查,并发布了《2022程序员群体职场洞察报告》,报告显示,“高薪”依然是程序员的职业标签之一。在调查的程序员群体中,年薪在10-30万元之间的人数占比为66.7%,…

Sharding-JDBC(四)集成dynamic-datasource

目录1.Maven依赖2.yml配置3.DataSourceConfig.java4.TUserService.java5.TUserServiceImpl.java6.测试代码7.测试结果8.源码地址实现原理: 通过 DataSourceConfig.java 将ShardingJDBC数据源配置为动态数据源之一。通过 DS(DataSourceConfig.SHARDING_DATA_SOURCE_…

Coinbase Vntures:Web3社交堆栈指南

概述 Web3社交网络赋予用户对其数据、身份和关系的所有权及可移植性,同时支持无需许可的开发。 Web3社交堆栈有四层:托管、社交原语、profile和应用程序。 例如:Farcaster是一款类似twitter的社交应用程序,它创建在开放的社交图…

HTTPS协议的密钥交换流程

前言 HTTPS 常用的密钥交换算法有两种,分别是 RSA 和 ECDHE 算法。 其中,RSA 是比较传统的密钥交换算法,它不具备前向安全的性质,因此现在已很少服务器使用。而 ECDHE 算法具有前向安全,所以被广泛使用。 注&#xf…

18 | 如何处理k8s证书过期

目录1 证书过期2 常用命令2.1 使用统一命令查看2.2 查看apiserver.crt证书时间2.3 查看secret2.4 查看ingress3 k8s证书过期处理方法1 证书过期 证书在使用的过程中,通常是一年有效期,到期后,需要重新续期。 2 常用命令 2.1 使用统一命令查…

智慧车行预约小程序,汽车保养、维修、美容、检测预测小程序,前后端完整代码包括车行动态,养车常识,保养预约,维修预约,洗车美容预约

功能介绍 智慧车行小程序,是一个专门为洗车/4S/车辆维修行业打造的小程序,前后端完整代码包括车行动态,养车常识,保养预约,维修预约,洗车美容预约,汽车检测预约等功能,采用腾讯提供的…

分布式锁

目录 1. 模拟高并发场景秒杀下单 1.1 导入依赖 1.2 配置application.yml文件 1.3 场景模拟 1.4 案例演示 2. JVM级锁与redis级分布式锁 2.1 JVM级锁 3. redis级分布式锁 3.1 什么是setnx 3.2 场景分析 4. redisson分布式锁 4.1 什么是Redisson 4.2 Redisson工作原…

有关于decoder中的past_key_values参数

我们都知道,encoder-decoder模型在进行generate的时候,会重复地调用decoder (i.e., auto-regressive)。 也就是,上一个step decoder的预测结果,作为下一个step decoder的输入。 这个时候,由于…

Axios(一) +Promise自定义封装36-42

1. axios 是什么? 1. 前端最流行的 ajax 请求库 2. react/vue 官方都推荐使用 axios 发 ajax 请求 3. 文档: https://github.com/axios/axios 1.2. axios 特点 1. 基于 xhr promise 的异步 ajax 请求库 2. 浏览器端/node 端都可以使用 3. 支持请求/响应拦截器 4…

从零开始,开启属于你的 RTE 漫游之旅!丨漫游指南 x 即将启航

🤔 什么是「开发者漫游指南」? 「开发者漫游指南」邀请热爱前端开发、关心音视频领域发展、希望进入音视频行业、乐于和大家一起交流成长的小伙伴,通过「开发者漫游指南」与社区共同成长,帮助更多的开发者在实时音视频领域取得进…

Linux中gdb的使用

文章目录gdb的使用方法启动gdb之前的准备工作下载gdb拥有一个带有调试信息的可执行程序正式启动gdb展示源码(要先看到源码才知道接下来的步骤……)打断点显示所有断点信息运行程序逐过程(VS中的F10)逐语句(VS中的F11&a…

实验四、格子世界(Grid World)

一、实验目的 (1)熟悉动态规划算法中策略评估过程; (2)了解如何对问题进行建模处理,包括环境、状态、动作、奖惩值的初始化; 二、实验内容与要求 (1)掌握动态算法基本…

华为机试_HJ27 查找兄弟单词【中等】

目录 描述 输入描述: 输出描述: 解题过程 提交代码 学习代码 代码一 收藏点 描述 定义一个单词的“兄弟单词”为:交换该单词字母顺序(注:可以交换任意次),而不添加、删除、修改原有的字…

Linux系统 PHP安装expect扩展详解

今天继续给大家介绍服务器运维相关知识,本文主要内容是Linux系统 PHP安装expect扩展详解。 一、expect简介 expect是基于tcl语言开发的,用于实现自动和交互式任务进行通信,而无须人的干预。expect是建立在tcl基础上的一个工具,还…

Navicat--对比和同步MySQL表结构的方法

原文网址:Navicat--对比和同步MySQL表结构的方法_IT利刃出鞘的博客-CSDN博客 简介 本文介绍如何使用Navicat对比和同步MySQL表结构的方法。 实际项目中会遇到这样的场景:将测试环境的表结构同步到生产环境。 工具> 结构同步 选择源数据库和目标数据…

tensorflow 基本概念和基本操作

op和tensor之间的关系 op是graph上的节点,线就是tensor。 op输入tensor,同时也产出下游的tensor 作为每一个tensor,都会有一个op的属性(attribute),该op就代表着这个tensor是被什么计算产出的。举个例子: In [74]: w…

Redis6 主从复制

Redis6 主从复制1. 什么是主从复制2. 能做什么3. 配置1主2从3.1 配置3.2 启动redis3.3 配置主从关系4.常见问题4.1 一主二仆5. 主从复制原理6. 薪火相传7. 反客为主1. 什么是主从复制 主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制&#xff0c…