用Spring Cloud Alibaba开发微服务会更香吗?
关注DD,除了前沿消息,还有每周福利哦
Spring Cloud Alibaba致力于提供微服务开发的一站式解决方案,它是Spring Cloud组件被植入Alibaba元素之后的产物。
利用Spring Cloud Alibaba,可以快速搭建微服务架构并完成技术升级。中小企业如果需要快速落地业务中台和技术中台,并向数字化业务转型,那Spring Cloud Alibaba绝对是一个“神器”。
01 Spring Cloud Alibaba是什么?
Spring Cloud Alibaba与Spring Cloud的关系如下图所示。Spring Cloud Alibaba是Spring Cloud的超集。
如上图所示,业务能力代表应用的服务,服务之间通过HTTP或者Dubbo进行通信。
在没有Spring Cloud Alibaba之前,如果应用使用Spring Cloud 作为基础框架,并使用Spring Cloud生态的服务治理能力(只支持HTTP或者DNS),则其是不能兼容Dubbo服务的。在Spring Cloud Alibaba出现后,服务可以快速地完成HTTP和Dubbo通信的适配。
Spring Cloud Alibaba依赖Spring Cloud,并通过二次开发让开发者使用Spring Cloud更加简单和灵活。开发者可以直接使用Spring Cloud Alibaba来替换Spring Cloud。在Spring Cloud Alibaba出现后,开发者可以在应用中采用Spring Cloud的协议和Dubbo的协议混合通信。
02 切换过来成本大吗?
如果业务原先采用“Spring Cloud + Eureka/Consul”微服务体系,则可以快速切换到Spring Cloud Alibaba微服务体系。
如果业务还停留在单体架构,则可以几乎零成本地切换到Spring Cloud Alibaba微服务体系,风险很小。
如果业务应用要上阿里云,则可以直接采用Spring Cloud Alibaba的商业版来实现,成本非常小。
03 Spring Cloud Alibaba有哪些组件?
Spring Cloud Alibaba 的组件功能既有免费版本,也有收费版本。组件如下。
Sentinel:以“流”为切入点,在流量控制、并发性、容错降级和负载保护等方面提供解决方案,以保护服务的稳定性。
Nacos:一个具备动态服务发现和分布式配置等功能的管理平台,主要用于构建云原生应用程序。
RocketMQ:一个高性能、高可用、高吞吐量的金融级消息中间件。Spring Cloud Alibaba 将RocketMQ 定制化封装,开发人员可“开箱即用”。
Dubbo:一个基于Java的高性能开源RPC框架。
Seata:一个高性能且易于使用的分布式事务解决方案,可用于微服务架构。
阿里云OSS(阿里云对象存储服务):一种加密的安全云存储服务,可以存储、处理和访问来自世界任何地方的大量数据。
阿里云SchedulerX:一款分布式任务调度产品,支持定期任务和在指定时间点触发任务。
阿里云SMS:一种覆盖全球的消息服务,提供便捷、高效和智能的通信功能,可帮助企业快速联系其客户。
04 学习Spring Cloud Alibaba的建议
下面给出学习Spring Cloud Alibaba的建议:
(1) 需要先了解一下 Spring Boot,但不一定要先学习Spring Cloud。
(2) 最好能实战,俗话说,光说不练假把式,要想快速的上手和熟悉Spring Cloud Alibaba,就得多练习,多实战。
搭建Nacos注册中心环境,用Spring Cloud Alibaba快速初始化一个微服务,验证注册中心的功能,比如服务注册、服务订阅、服务分组、多租户等。
搭建Nacos配置中心环境,用Spring Cloud Alibaba快速初始化一个微服务,验证配置中心功能,比如配置管理、配置信息动态变更、灰度配置等。
搭建Sentinel环境,用Spring Cloud Alibaba快速初始化一个微服务,验证Sentinel的分布式流量治理的功能,比如流量控制、熔断降级、系统自适应保护以及持久化流控规则等。
搭建Seata环境,用Spring Cloud Alibaba快速初始化一个微服务,验证Seata的分布式事务治理的功能,比如AT模式的分布式事务、TCC模式的分布式事务、XA模式的分布式事务以及Saga模式的事务等。
搭建RocketMQ环境,用Spring Cloud Alibaba快速初始化一个微服务,验证RocketMQ的分布式消息的功能,比如消息路由管理、生产消息、消费消息、存储消息、分布式事务消息等。
搭建一个基础网关Spring Cloud Gateway环境,用Spring Cloud Alibaba快速初始化一个微服务,验证网关的功能,比如服务路由、服务鉴权等。
搭Skywalking环境,用Spring Cloud Alibaba快速初始化一个微服务,验证分布式链路追踪的功能、比如不同探针的流量采集、链路数据存储、链路数据清洗等。
搭建Elastic Job环境,用Spring Cloud Alibaba快速初始化一个微服务,验证分布式定时Job的功能,比如定时任务、任务管理以及任务分片等。
搭建ShardingSphere环境,用Spring Cloud Alibaba快速初始化一个微服务,验证分库分表的功能,比如读写分离、分库分表等。
搭建Redis环境,用Spring Cloud Alibaba快速初始化一个微服务,验证Redis的功能,比如基本数据结构的数据存储、分布式锁、分布式缓存等。
搭建Discovery环境,用Spring Cloud Alibaba快速初始化一个微服务,验证Discovery的功能,比如灰度路由、灰度发布以及蓝绿发布等。
(3) 在经过大量的实例练习之后,需要有一个完整的项目去将这些实例给整合在一起,做到从业务中来,到业务中去的效果。
技术一定经过项目的演练和洗礼,才能真正的熟悉它,所以Spring Cloud Alibaba一定要在业务中使用,并落地到真正的项目中,才能实现它的价值。
收集更多的业务场景,这样会更加有驱动力的去优化业务中“基于Spring Cloud Alibaba”的微服务架构。
收集更多的用户体验,这样才能更好的和Spring Cloud Alibaba开源社区保持更多的功能需求的沟通性,并驱动自己去熟悉未知的技术细节。
(4) 处理好“是先学支撑技术,还是一步到位”问题。
首先,Spring Cloud Alibaba是一个微服务基础框架,它本身具备一定的微服务治理的能力,比如分布式服务治理、分布式配置治理、分布式流量治理、分布式事务、分布式网关、分布式消息治理等。如果项目直接使用Spring Cloud Alibaba提供的功能,完全可以满足中等项目的微服务开发的业务场景,开发人员只需要熟悉Spring Cloud Alibaba就可以成为一个微服务领域的开发专家。
其次,既然是微服务基础框架,它还可以扩展自身的没有的微服务治理能力,比如Skywalking、Discovery、ShardingSphere、DataX等。Spring Cloud Alibaba是基于Spring Boot的思想来设计的,Spring Boot又是基于Spring Framework来设计的。也就是说,凡是Spring Framework生态的技术栈,Spring Cloud Alibaba均可以扩展。这样无论是开源社区提供的微服务技术能力,还是公司自研的微服务技术能力,都可以被Spring Cloud Alibaba引入。
最后,Spring Cloud Alibaba是Spring Cloud的超集,它具备Spring Cloud整个微服务生态系统的能力。
总结,Spring Cloud Alibaba绝对是微服务架构领域的巨无霸,通过它开发人员可以快速地搭建高可用、高稳定性和高性能的微服务架构。在搭建的过程中,还会驱动开发人员去扩展Spring Cloud Alibaba还不支持的微服务技术。Spring Cloud Alibaba是让开发人员入门和进阶微服务架构的一步到位的最佳选择,通过它开发人员可以快速地熟悉微服务架构的全栈支撑技术。
如果想要系统学习Spring Cloud Alibaba,推荐阅读 《Spring Cloud Alibaba微服务架构实战派(上下册)》。
本书是以“实现完整的Spring Cloud Alibaba微服务架构”为目标,为了这个目标,除介绍Spring Cloud Alibaba这个“主角”外,对于支撑Spring Cloud Alibaba微服务架构的技术(比如Seata、Skywalking、Redis、RocketMQ等)也基本都是从零讲起,保证读者能够平滑地学习。本书是“一站到底”的解决方案:读者只需从这里上车,中途无需转乘,读者需要什么,本书就提供什么,直达终点。
如果喜欢本文欢迎 在看丨留言丨分享至朋友圈 三连
抽奖赠书
截止时间:2022年1月9日 17:00
如何抽奖:点击下方卡片,关注并回复关键词 :20220105
用Spring Cloud Alibaba开发微服务会更香吗?相关推荐
- 进击的 Spring Cloud Alibaba —— 框架与服务
作者 | 陈曦(良名) Spring Cloud Alibaba 项目成员,start.aliyun.com 负责人. 导读:本文整理自作者于 2020 年云原生微服务大会上的分享<进击的 S ...
- 【Spring Cloud Alibaba】Gateway 服务网关
[Spring Cloud Alibaba]Gateway 服务网关 1 架构图 2 Predicate 断言 3 路由 3.1 静态路由 3.2 动态路由 3.3 Nacos 配置 4 过滤器 4. ...
- Spring Cloud Alibaba 大型微服务项目实战
作者介绍 程序员十三,多年一线开发经验,历任高级开发工程师.后端主程.技术部门主管等职位.同时也是开源项目的爱好者和贡献者.掘金优秀作者.CSDN 博客专家.实体图书作者.专栏作者.视频讲师. 小册介 ...
- Spring Cloud Alibaba 分布式微服务高并发数据平台化(中台)思想+多租户saas企业开发架构技术选型和设计方案
基于Spring Cloud Alibaba 分布式微服务高并发数据平台化(中台)思想+多租户saas设计的企业开发架构,支持源码二次开发.支持其他业务系统集成.集中式应用权限管理.支持拓展其他任意子 ...
- 流量暴增,掌门教育如何基于 Spring Cloud Alibaba 构建微服务体系?
作者 | 童子龙 掌门教育基础架构部架构师 **导读:**本文整理自作者于 2020 年云原生微服务大会上的分享<掌门教育云原生落地实践>,本文主要介绍了掌门教育云原生落地实践,主要围绕 ...
- Spring Cloud Alibaba 新一代微服务解决方案
本篇是「跟我学 Spring Cloud Alibaba」系列的第一篇, 每期文章会在公众号「架构进化论」进行首发更新,欢迎关注. 1.Spring Cloud Alibaba 是什么 Spring ...
- Spring Cloud Alibaba——Nacos实现服务治理
引言 本博客总结微服务开发中各个微服务调用的实现,并使用 Nacos 完成服务注册和发现. 文章中会涉及到 maven 的使用,以及 spring boot 的一些知识.开发工具采用 IDEA 202 ...
- Spring Cloud alibaba 使用Nacos服务发现
Provider 服务端 服务端我们复用前篇Spring Cloud alibaba 使用Nacos配置中心的代码 修改启动类 在启动类上添加@EnableDiscoveryClient 注解 开启服 ...
- Spring Cloud Alibaba【Nacos 服务治理】 高可用保证:Nacos 如何有效构建注册中心集群
上一节我们学习了 Nacos 注册中心的作用以及单点运行的方法,但是单点运行是分布式应用的大忌,在分布式架构中,任何单点都可能成为系统的瓶颈,因此在生产环境中 Nacos 都需要通过部署集群来为系统带 ...
最新文章
- Activiti 开始流程时存储发起人员USERID
- 【转】为什么自动车完全不可以犯错误
- java的servlet是干嘛的_Servlet能够做什么?
- mysql按字段拆分表_MYSQL命令怎么实现将表中某个字段中多个记录拆分,急求答案!...
- 阿里 AI 研究成果入选国际顶会 ICML 2020,AI 推理速度提升 3 倍
- case / switch语句的Python等价物是什么? [重复]
- 汉字常用字unicode码表
- Ubuntu18 安装MeshLab软件
- 【day23】The field file exceeds its maximum permitted size of 1048576 bytes.
- 数字图像处理 笔记--2
- 星界边境机器人升级,星界边境作弊码分享
- swift中检测跳转苹果自带地图、高德地图、百度地图、腾讯地图
- 网络营销策略常见方法有哪些?
- 蜂窝网实现移动性管理?
- 2022-2028年中国红枣行业发展模式分析及市场分析预测报告
- week16 csp-m4
- 区块链为什么这么火?又是一次不可错过的商机?
- dropbox网页版登录_出色的UX:Dropbox在下载页面上关注细节
- 如何设置app字体跟随系统_Android 应用全局字体调节或禁止随系统字体大小更改...
- 建行计算机面试个人介绍,2013建设银行四川省分行个人面试经验分享
热门文章
- 我们学校的DV作品——《感悟青春》
- Spring中配置Quartz的misfireInstruction
- 浅析大规模DDOS防御架构:应对T级攻防
- python paramiko包 ssh报错No existing session 解决方法
- linux shell 逻辑判断 [] [[]] -n -z 用法区别
- php laravel 框架 APP_KEY 的作用
- URI URL 简介区别
- docker 容器退出自动删除 一次性运行
- docker 占用磁盘空间清理 无用数据卷删除
- VMware的快照和克隆总结