重大利好,Dubbo 3.0要来了。
关于Dubbo的好消息,2018年1月8日,Dubbo创始人之一梁飞在Dubbo交流群里透露了Dubbo 3.0正在开工的重大消息。
Dubbo是阿里开源的分布式框架,已经多年停止更新处于半死不活状态,又于2017年又开始更新满血复活重新得到关注。Dubbo在复活后,一直保持着小步快跑的阶段,现在又带来这样一个3.0的重大变革,让大家更加关注Dubbo的发展,希望Dubbo真正完成涅磐重生!
据网上可靠消息,目前Dubbo 3.0已正式投入全职开发梯队,初步Runtime已在验证,3月底将在线上应用投入使用。
Dubbo 3.0新特性前瞻
据消息,Dubbo 3.0内核与Dubbo 2.0完全不同,但它会兼容2.0。
Dubbo 3.0将以Streaming为内核,而不再是2.0时代的RPC,但是RPC会在 3.0中变成远程Streaming对接的一种可选形态。Dubbo 3.0给出了一个内核接口:Streaming docking(Streaming),一切服务治理将围绕这个内核接口进行扩展。而Streaming通道与gRPC类似,支持HTTP/2,同时REST接口也会受到一等公民支持。
Dubbo 3.0在通讯上的改动并不大,重点是在服务治理和编程模型上。说到编程模型的革新,梁飞透露,此次Dubbo3.0能够开工主要也是因为新特性将去掉一切阻塞,以“一切同步”为第一目标,在对IO密集业务的处理上,它能够提高机器利用率,使得一半机器的成本被节省下来。他还表示,其实Dubbo 3.0技术选型重大变更的驱动因素,也就是降低成本,因为在将系统服务化后,全业务线的机器都在等待返回数据,负载压不上去,机器浪费严重。
这个去阻塞化的模式,其实就是使用了“反应式编程”模式(Reactive Programming),在Dubbo 3.0中,reactive将成为核心,会做到客户端、服务端、缓存和数据库,全程无阻塞。在数据库上,JDBC驱动将进行更改,同时为了性能还会配合使用阿里毕玄对JVM协程的改造。更为重要的是,这个重大变更不仅体现在Dubbo上,它也将影响到阿里10年来积累的中间件。
群里有人问到是否会采用Service Mesh,梁飞表示Dubbo 3.0将支持可选 mesh,多加一层 IPC,这主要是为了兼容老系统;而内部则会优先尝试内嵌模式。他说代理模式Ops可独立升级框架,减少业务侵入,而内嵌模式可以带业务测试、部署节点少、稳定性检测方便。同时可以将Dubbo 3.0 启动为独立进程,由dubbo-mesh进行IPC,路由、负载均衡和熔断机制将由独立进程控制。
鉴于Dubbo 3.0的新特性,我们可以拭目以待!
推荐阅读
分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。
关注微信公众号福利!!!
回复关键字「666」获取一份最新 Java 架构资料,你要的都有!
回复关键字「Java」获取JVM, 多线程等Java技术系列教程;
回复关键字「spring」获取Spring, Spring Boot, Spring Cloud教程;
回复关键字「架构」获取分布式、微服务、架构、高并发等系列干货;
回复关键字「面试」获取各种 Java 面试题及答案、面试实战经验;