三大门派

有Spring Cloud的地方就有江湖,我们就来看一看在这个江湖中都有哪些独霸一方的门派!

Netflix

是先有Spring Cloud还是先有Netflix?这是一个好问题。Netflix是一家大名鼎鼎的互联网传媒公司,但为什么它在开源软件领域有这么大的名声呢?这就不得不说起它和Spring Cloud的渊源了。
很久很久以前,天和地还没有分开,宇宙混沌一片。有个叫Netflix的公司,在这混沌之中,拿自身的业务动手,开启了一段微服务的改造之旅。在这段漫长的过程中,沉淀出了一系列优秀的微服务组件,比如大名鼎鼎的Eureka,Hystrix,Zuul等等,这些组件经过Pivotal的一系列封装以后就构成了初代目Spring Cloud。
目前Spring Cloud Netflix组件库是Spring Cloud中最受欢迎的项目,并且还拥有最广泛的群众基础,这么说吧,10个用Spring Cloud的公司,有八九个都会选用Netflix组件库全家桶来构建自己的技术栈。听到这,同学们可能会问,难道Spring Cloud里还有其他的组件库吗?那我们就往下看。

阿里巴巴

阿里近些年开源的步子迈的很大,都说步子迈得大容易扯着裆,不过凭借阿里996+鸡血文化的加持,用互联网行业特有的糙快猛的精神,近几年在开源软件上不断开疆扩土,发展速度和规模都是是可圈可点。
目前开源领域一大热门当属Spring Cloud,尽管前面有Netflix组件库占尽天时地利,可是不妨碍阿里巴巴集团一贯怼天怼地的做派。这不,Spring Cloud大家族中又添新丁,那就是–Spring Cloud Alibaba组件库。
从目前的势头来看,Alibaba组件库还是呈现一路高歌猛进的态势,其中多款组件已经站上擂台和Netflix组件展开直接竞争。得益于阿里集团的福报文化,加班不要命的码农们给这些组件添加了各种业务功能,从我个人使用这两个组件的感受来说,Netflix组件相对来说比较“纯粹和纯净”,Alibaba组件似乎透出一股“KPI导向”的味道(恨不得把能想到的功能全塞进去)。本章课程我们将以Netflix组件为主,同时也会重点介绍几个Alibaba组件库的组件。

Spring Open Source

这最后一股势力就是Spring自个儿了,由Spring自己独家挂牌的开源组件,可以说是“原配”组件了。都说原配的才是最好的,不过在上面两个重量级组件库面前还真不好说。同学们经常会看到这样一个情况,在某个领域中这三家的组件会扎堆出现。比如服务治理,这三家各自都有一个独立组件,想想大家都是Spring Cloud一家子,为何还整出了一副三足鼎立的态势呢?这背后都有很多故事的,我们在后面进入实战课程之后再来跟大家说说这里面的恩怨情仇。
势力范围

那接下来我们就看一看上面那三股势力都在哪些领域部署了兵力

服务治理 Eureka Nacos,Dubbo(RPC框架) Consul
负载均衡 Ribbon spring-cloud-loadbalancer
服务调用 Feign(后划归为openfeign)
服务容错 Hystrix + Turbine + Dashboard Sentinel
限流 Sentinel Gateway支持网关层限流
服务网关 Zuul Gateway
配置管理 Archaius Alibaba Cloud ACM Config
消息总线 Bus
调用链路追踪 Sleuth
消息驱动组件 RocketMQ(Java写的消息中间件) Stream(对接Kafka,RabbitMQ)
任务调度 Alibaba Cloud SchedulerX spring-cloud-task
其他 Sidecar(跨语言) Seata(分布式事物), SMS(短信服务)

从上面的表格中可以看出,在大多数的领域当中,我们都有多与一种的解决方案,而且各个组织在不同领域发力程度也不一样。我们在实际的研发当中不会只盯着一个组件库用,而是结合使用来自不同组织开发的组件,这样才能发挥Spring Cloud的最强功力。
同学们可能注意到了,阿里巴巴组件库传达出了一股不小的野心,它的很多的组件都和阿里云(Alibaba Cloud)紧密关联了起来,甚至连Nacos都有一股“强推Dubbo”的味道,看上去像是在大力推广阿里集团自己的技术栈,似乎并不打算全心全意服务于Spring Cloud原生的生态体系。所以从我个人角度来说,并不太喜欢这种比较“功利”和KPI导向的价值观。

SpringCloud核心组件介绍 (Netflix + Alibaba套件)相关推荐

  1. springCloud五大核心组件介绍

    目录 一.首先看一张springCloud的图片 二.简单介绍下什么是springCloud? 三.为了方便理解假设一个业务场景 四.SpringCloud核心组件Eureka(类似于zookeepe ...

  2. SpringCloud课程总结 Netflix 系列总结

    SpringCloud课程总结 第一章 课程介绍和学习路线 1.微服务架构SpringCloud课程介绍     简介:课程介绍和课程大纲讲解,讲课风格和重点内容理解技巧 2.技术选型和学后水平    ...

  3. SpringCloud核心组件概述(五大神兽)

    小伙伴们可以从第一篇看起 微服务 分布式 集群 负载均衡详述 spring boot springcloud dubbo概述 2.5万字详解Java 23种设计模式的简介和创建型模式(简单工厂.工厂方 ...

  4. springcloud(第九篇)netflix zuul

    2019独角兽企业重金招聘Python工程师标准>>> springcloud(第九篇)netflix zuul 博客分类: 架构 spring 微服务 netflix zuul i ...

  5. SpringCloud无介绍快使用,nacos配置中心的基本使用(十九)

    SpringCloud无介绍快使用,nacos配置中心的基本使用(十九) 问题背景 nacos配置中心 nacos命名空间 Lyric: 我耍你耍的就像土耳其的冰淇 问题背景 从零开始学springc ...

  6. 【SpringCloud】Spring cloud Alibaba Sentinel 降级规则

    文章目录 1.概述 2.服务降级 2.1 RT 2.2 异常比例 2.3 异常数 1.概述 本章是接着上一章讲解:[SpringCloud]Spring cloud Alibaba Sentinel ...

  7. SpringCloud笔记(Hoxton)——Netflix之Eureka服务注册与发现

    基础应用 Eureka简介 Eureka是一个基于REST的服务,主要在AWS云中使用,定位服务来进行中间层服务器的负载均衡和故障转移. SpringCloud封装了Netflix公司开发的Eurek ...

  8. SpringCloud无介绍快使用,子module提供者支付微服务业务开发(六)

    SpringCloud无介绍快使用,子module提供者支付微服务业务开发(六) 问题背景 项目搭建 Lyric: 一只灰狼问候我谁是神枪手 问题背景 从零开始学springcloud微服务项目 注意 ...

  9. 尚硅谷周阳老师2020年 SpringCloud(H版和Alibaba) 视频教程学习时整理的笔记记录和代码

    尚硅谷周阳老师2020年 SpringCloud(H版和Alibaba)视频教程学习时整理的笔记记录和代码 尚硅谷周阳老师SpringCloud(H版和Alibaba)学习.代码摘录,下面是各个mod ...

最新文章

  1. Datawhale第五期组队学习团队成员
  2. 新学期使用ssm开发一个教材管理系统
  3. 【Sublime Text3】Package Control:Install Package不能使用解决方法
  4. spring18:aop介绍
  5. 前端三部曲之Html -- 1(html的基本结构和常见的meta标签的作用)
  6. python大纲图_Python课程大纲
  7. 4米乘以12米CAD图_CAD做钣金件展开的原理你知道吗?
  8. 研华自动驾驶计算机,ADVANTECH研华TPC-1582H-433BE 工业平板电脑一体机计算机工控机...
  9. Git--rebase合并提交
  10. 又一款主流勒索软件 Paradise 的源代码遭泄露
  11. 红帽全年总营收24亿美元,同比增长18%
  12. 中文分词 及发展现状(总结的不错)
  13. PMP 风险应对措施 :规避和减轻的区别
  14. WebSphere 异常问题记录
  15. Tomcat服务器 和 HTTP协议
  16. 【高等数学笔记】二元函数连续、可微、偏导数存在、偏导数连续、任意方向导数存在的关系
  17. Linux单片机串口通信总结
  18. 12、ABPZero系列教程之拼多多卖家工具 拼团提醒功能登录拼多多实现
  19. 思维导图是一个查漏补缺的好工具
  20. Java面试题集(116-135)

热门文章

  1. java set循环取值_Java遍历Map和遍历Set
  2. 中国啤酒10强“燕京漓泉”引入法大大电子合同,加速数字化升级
  3. 【财富空间】8个字,就是短短一生;没有不委屈的工作(深度好文)
  4. java emd,MATLAB实现EMD分解及希尔伯特谱分析
  5. 工程中导入sqlite -sqlite 基础教程(1)
  6. 编程中十大常用算法:(七)克鲁斯卡尔算法(最小生成树)
  7. 牛客网数据库SQL实战23—— 对所有员工的薪水按照salary进行按照1-N的排名
  8. java属于前端还是后端_jsp属于前端还是后端
  9. 计算每年每月累计销售额
  10. centos和ubuntu分别如何配置dhcp网络