今天看到了这样一个问题:Spring Cloud 和 Dubbo哪个会被淘汰?看了几个回答,都觉得不在点子上,所以要么就干脆写篇小文瞎逼叨一下。
简单说说个人观点
我认为这两个框架大概率会长期都存在。
时至今日,这两个框架放到现在,已经不存在谁取代谁这一说了。由于Spring Cloud Alibaba的出现,Dubbo已经很好的融入到了Spring Cloud体系,所以围绕Spring Cloud生态的各种周边产品都是可以无缝整合到一起来玩的。
Dubbo无缝整合Spring Cloud生态是啥意思呢?主要两方面:
- 如果你原来是Dubbo用户,那么现在可以把Spring Cloud引入进来。轻松便捷地整合Spring Cloud的配置中心、注册中心以及诸如分布式跟踪等好用的周边产品来管理你的分布式服务集群,与其他Spring Cloud Netflix用户享受同等的生态优势。
- 如果你原来不是Dubbo用户,但是你的场景在使用HTTP调用时候觉得不够效率不够经济,那么就可以考虑引入Dubbo,来提升你服务减调用的RPC性能。
到这里,可能有的看官要说了,你都是站在融合的角度来说的,我就是不喜欢Dubbo那种接口依赖的方式,坚决捍卫Spring Cloud原始生态!
行!这种坚持也是可以的,并没有什么错,通过HTTP契约方式管理服务接口,不用接口提供方的JAR,这在编译层面上就不会产生耦合,这点确实一直是目前不用Dubbo的一个重要论据。个人也觉得这种选择在很多方面是有优势的,但是对接口的兼容设计也是有非常高要求的,只要能执行到位,任何一种方案都可以做的很流畅。springcloud 项目to:www.1b23.com
但是,我认为Spring Cloud用户对这种方案的坚持并不会影响Dubbo生态的消亡。主要两点:
- Dubbo的原始用户群巨大,在Spring Cloud布道之前,Dubbo就拥有了极大的用户群体,现在既然有很好的融合方案,那么融合的考虑肯定要比重构的考虑要更为稳妥的。
- 有很多用户会质疑阿里巴巴的开源项目容易太监,这次Dubbo重新维护,又能坚持多久?其实这点这次就不用过多的担心,因为目前的Dubbo已经给了Apache基金会,由于Apache对开源项目在是否可长期维护的评估上有很高的要求(活跃度、贡献比例等),能在Apache毕业的项目,除非出现了一个在各方面都能超越它的东西出现,不然就会很长时间的存在且并应用。
不论从Spring Cloud用户来说,还是Dubbo用户来说,都没有绝对要消亡另一方的场景存在。所以,个人认为这两个极大可能会成为好基友,尤其在国内的应用上。
相关推荐
与 Dubbo 相比,SpringCloud 是一个更为全面的框架,它提供了服务注册、服务发现、配置中心、分布式事务、分布式锁、服务追踪等多种功能。 SpringCloud 的组件 1. 服务注册中心:Eureka、Zookeeper、Consule、...
- **职责与技术**:负责商品模块的设计、开发和单元测试,利用SpringCache和Redis提升查询效率,使用FastDFS和富文本编辑器处理图片上传和商品描述,以及库存管理和预警功能。 这些技能和项目经验表明,求职者具有...
- Linux、Git、Redis、RabbitMQ、Nginx、SpringCloud、Dubbo、Seata、Sentinel、Feign、Nacos的基本概念和应用场景。 - MySQL与Redis双写一致性、Redis的持久化(RDB和AOF)、锁机制、淘汰策略、高可用方案。 - ...
Spring Cloud、Dubbo等框架提供了微服务治理的解决方案。 12. **容器化与编排**:Docker容器化技术简化了应用部署,Kubernetes、Docker Swarm等编排工具用于管理容器集群,实现服务发现和自动伸缩。 以上内容仅是...
6. **分布式与微服务**:理解RPC(远程过程调用)原理,会使用ZooKeeper进行集群管理,以及Dubbo构建分布式系统。对Spring Cloud的使用有深入理解,能够搭建全家桶生态系统,包括Eureka(服务注册与发现)、Feign...
Spring Cloud和Dubbo是常用的Java微服务框架。服务间的通信可以采用RESTful API、RPC(如gRPC)等方式。 **三、缓存策略** 使用缓存可以显著提升系统响应速度,减轻数据库压力。Redis和Memcached是常见的缓存系统...
8. **其他新技术**:如微服务架构(Spring Cloud)、Docker容器化、DevOps工具链、云计算平台等,这些都是现代Java开发的热点。 9. **企业实战面试题**:这部分通常会涉及实际工作中的问题解决,例如系统设计、性能...
├─面试必问-微服务架构深入浅出讲解springcloud │ 微服务架构 --深入浅出讲解springcloud.mp4 │ ├─面试必问-教你手写MyBatis框架 │ 一小时教你手写MyBatis框架.mp4 │ ├─面试必问-架构杀手锏——java混乱...
3. Spring Cloud与Dubbo:对比两种微服务框架,了解其核心组件和使用方式。 八、性能监控与调优 1. 性能指标:CPU、内存、网络、磁盘I/O等监控关键点。 2. JMX与VisualVM:使用这些工具进行Java应用的性能分析。 3....
2. **黑马头条/九点钟项目**:这两个项目分别基于SpringBoot+SpringCloud架构,涵盖了工作流、分布式任务调度、消息推送等多种解决方案,使学生能够在实践中加深对微服务架构的理解。 ### 总结 传智播客推出的这套...
**volatile关键字**用于标记变量的状态,当一个变量被声明为volatile时,任何对该变量的读写操作都直接发生在主存中,因此任何线程对该变量的修改都能被其他线程立即感知。 **线程安全**是指多个线程并发访问同一个...