本篇内容主要讲解“spring cloud与dubbo有哪些区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“spring cloud与dubbo有哪些区别”吧!
要弄明白,搞清楚spring cloud 的神话,就得搞清楚spring cloud所有的组件
spring cloud的默认配置中心,基于git实现。
spring cloud 支持 netflix公司开源的组件的一个模块。netfilx开源组件有Eureka, Hystrix, Zuul, Archaius。
spring cloud的事件总线,负责整个微服务建构的事件(事件注册,触发,传播)。比如配置发生改变(这个有用吗?)
Spring Cloud Open Service Broker是一个用于构建实现Open Service Broker API的Spring Boot应用程序的框架。 Open Service Broker API项目允许开发人员为云本地平台(如Cloud Foundry,Kubernetes和OpenShift)中运行的应用程序提供服务。 Spring Cloud Open Service Broker提供了一个基于Spring Boot的框架,使您能够在支持Open Service Broker API的平台上为您自己的托管服务快速创建服务代理。
spring cloud cluster作用是基于Zookeeper, Redis, Hazelcast实现选举功能。分布式组件都有这个自带这个功能吧
spring cloud consul作用是基于 Hashicorp Consul实现服务注册与发现。不是跟Eureka的功能重合了吗?
Spring Cloud Security作用是基于OAuth3 与 zuul实现用户与资源权限
spring cloud sleuth是基于Zipkin实现链路跟踪
spring cloud data flow 作用是提供一套标准从不同的数据源里面读取数据,对数据进行处理。有点想kafka... 与RocketMQ commn
spring cloud stream 作用是统一了大部分消息中间件的行为。用 spring cloud stream可以操作很多消息中间件。比如activeMQ,RibbtMQ,kafka,RocketMQ。(一定用都没有)
spring cloud stream app starters 作用是可以把 spring cloud stream 进行独立部署。部署后可以提供服务,加入Spring Cloud Data Flow
spring cloud task 作用是 定时任务
spring cloud task app starters 作用是可以把 spring cloud task 进行独立部署。部署后可以提供服务
spring cloud zookeeper 作用是对zookeeper client 进行封装
spring cloud aws 模块可以把spring cloud应用直接部署到AWS服务上
spring cloud connector 作用是负责链接jvm获得jvm运行期信息。比如bean。
spring cloud starters 是spring cloud 支持maven的模块,引入spring cloud starters 会引入把所有子模块都默认加载。
spring cloud cli 可以让你以命令行方式快速建立云组件。
spring cloud contract 作用是契约测试。
spring cloud gateway 作用是网管
spring cloud openFeign 作用是基于feing实现http的rpc功能
这么多组件,在实际使用中大家能用到多少个组件。我列了列我用过的。
Spring Cloud OpenFeign
Spring Cloud Netflix
Spring Cloud Gateway
Spring Cloud Sleuth
Spring Cloud Task
比如没有买AWS服务无法使用Spring Cloud AWS 组件等等
功能 | dubbo | OpenFeign | 胜者 |
---|---|---|---|
网络传输 | tcp,http(1,1,1,2.0) | http1.1 | dubbo |
支持多协议 | 是 | 否 | dubbo |
多序列支持 | 是(json,heesin等) | 否(json) | dubbo |
资源隔离 | 是 (通过线程池隔离服务) | 否 | dubbo |
在功能层面 dubbo 实在完爆 openFeian。dubbo还多功能都没列出来了,实在不忍了。多注册中心,异步调用等等。
性能 | dubbo | OpenFeign | 理由 | 胜者 |
---|---|---|---|---|
网络传输 | tcp | http1.1 | tcp的性能至少是http1.1的5倍 | dubbo |
序列化性能 | hession | json | hession比json搞4倍 | dubbo |
方法调用方式 | 字节码 | 动态代理 | 性能相差1.5倍 | dubbo |
在性能方法 dubbo 完爆 openFeian。
不知道为什么用 spring cloud
组件 | 国内 | spring cloud | Netflix | 理由 | 胜者 |
---|---|---|---|---|---|
注册中心 | nacos | Consul(推荐使用eureka) | Eureka(不维护) | nacos | |
配置中间 | nacos/apollo | Config | archaius | nacos/apollo实在太强大了 | nacos/apolle |
限流 | sentry | 无 | Hystrix(不维护了) | sentry | |
分布式定时任务 | ejob | task | 无 | ejob | |
链路跟踪 | skyking | Zipkin | 无 | skyking是apache顶级项目 | skyking |
网关 | 无 | Gateway | zuul | zuul |
spring cloud | 国内 | 解读 |
---|---|---|
Security | 无 | security 实在太庞大了,小公司简单写一个aop,大公司自己写。 |
Bus | 无 | 无用的组件,nacos/apollo就可以实现传播了 |
Cluster | 无 | 只是做了封装而已,业务系统基本用不到 |
Data Flow | RocketMQ-connect | 最全面的是kafka的 |
Stream | 无 | 除了RocketMQ,鸟菜啊不会使用其他消息中间件,其他的实在太恶心了 |
Connectors | 无 | 其实是有是各个库自己实现了,比如dubbo,driud。 |
到此,相信大家对“spring cloud与dubbo有哪些区别”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。