关于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的新特性,我们可以拭目以待!

推荐阅读

干货:免费领取2TB架构师四阶段视频教程

面经:史上最全Java多线程面试题及答案

教程:Dubbo原理及应用全套视频教程

工具:推荐一款在线创作流程图、思维导图软件

分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。

重大利好,Dubbo 3.0要来了。的更多相关文章

  1. Dubbo 3.0 预览版解读,6到飞起~

    , false).start(); ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new St ...

  2. 精通Dubbo——dubbo2.0源码中的设计模式与SPI介绍

    Dubbo源码包介绍当我们从github把Dubbo源码下载下来之后有如下源码包   下面来说明每个包的作用,以便我们有目的的阅读代码 dubbo-admin dubbo管理平台源码包,用来管理dub ...

  3. 一文速览 Dubbo 3.0

    本文将带你快速了解 Dubbo3 的设计背景.总体架构与核心特性.与典型用户如阿里巴巴 HSF2 的关系等.也可以通过如下部分了解更多: 小白用户,快速浏览 Dubbo3 核心特性: 下一代通信协议 ...

  4. 构建第一个Spring Boot2.0应用之集成dubbo上---环境搭建(九)

    一.环境: Windows: IDE:IntelliJ IDEA 2017.1.1 JDK:1.8.0_161 Maven:3.3.9 springboot:2.0.2.RELEASE Linux(C ...

  5. dubbo 获取不到本地地址,返回 127.0.0.1

    2019-08-14 12:29:09.609  WARN 1079 --- [           main] org.apache.dubbo.config.AbstractConfig   :  ...

  6. 厉害了,Dubbo 正式毕业!

    厉害了,2019/05/21 Apache软件基金会发表博文,宣布 Dubbo 在 2019/05/20 这天正式毕业,成为 Apache 的顶级项目. 参考:https://blogs.apache ...

  7. dubbo服务提供与消费

    一.前言 项目中用到了Dubbo,临时抱大腿,学习了dubbo的简单实用方法.现在就来总结一下dubbo如何提供服务,如何消费服务,并做了一个简单的demo作为参考. 二.Dubbo是什么 Dubbo ...

  8. 基于dubbo的分布式项目实例应用

    本文主要学习dubbo服务的启动检查.集群容错.服务均衡.线程模型.直连提供者.只定阅.只注册等知识点,希望通过实例演示进一步理解和掌握这些知识点. 启动检查 Dubbo缺省会在启动消费者时检查依赖的 ...

  9. 通过单元测试理解spring容器以及dubbo+zookeeper单元测试异常处理

    一.先说一个结论:单元测试与主项目的spring容器是隔离的,也就是说,单元测试无法访问主项目spring容器,需要自己加载spring容器. 接下来是代码实例,WEB主项目出于运行状态,单元测试中可 ...

随机推荐

  1. eclipse中选取一列快捷键

    eclipse中选取一列 比如选中下面的1 4 1   2   3 4   5   6 快捷键 alt+shift+拖动鼠标

  2. Java不可变对象

    在创建状态后无法更改其状态的对象称为不可变对象.一个对象不可变的类称为不可变类.不变的对象可以由程序的不同区域共享而不用担心其状态改变. 不可变对象本质上是线程安全的. 示例 以下代码创建了不可变类的 ...

  3. 利用TKinter模块创建GUI窗口

    # -*- coding: utf-8 -*- from Tkinter import *     root = Tk() # 80x80代表了初始化时主窗口的大小,0,0代表了初始化时窗口所在的位置 ...

  4. 线性方程组迭代算法——Jacobi迭代算法的python实现

    原理: 请看本人博客:线性方程组的迭代求解算法——原理 代码: import numpy as np max=100#迭代次数上限 Delta=0.01 m=2#阶数:矩阵为2阶 n=3#维数:3X3 ...

  5. 关于shell脚本中的别名问题

    在shell脚本中,shell中的alias别名是不会起作用的,在脚本中的命令都是按着环境变量PATH直接找到命令文件而执行的,所以就不用担心脚本里的命令会与shell中的个性别名冲突啦~

  6. .Net Core身份认证:IdentityServer4实现OAuth 2.0 客户端模式

    一.客户端模式介绍 客户端模式(Client Credentials Grant)是指客户端直接向认证服务(Authorization Server)发送认证请求,获取token,进行认证,一般适用于 ...

  7. Nginx+PHP-FPM远程命令执行_CVE-2019-11043

    漏洞描述 此次漏洞主要由于 PHP-FPM 中 sapi/ fpm/ fpm/ fpm_main.c 文件内的 env_path_info 下溢导致,攻击者可以使用换行符 %0a 破坏 Nginx 中 ...

  8. 百度地图errorcode: 230 uid: -1 appid -1 msg: APP Scode码校验失败

    最近要维护以前师兄的一个android项目,里面用到了百度地图,在我的机器上按照官网的方式获取的SHA1签名+包名申请ak: 然而就是报errorcode: 230 uid: -1 appid -1 ...

  9. RK3288编译 Android 5.1 固件

    1 准备工作 编译 Android 对机器的配置要求较高: 64 位 CPU 16GB 物理内存+交换内存 30GB 空闲的磁盘空间用于构建,源码树另外占用大约 25GB Ubuntu 14.04 操 ...

  10. 【Luogu】【关卡2-16】线性动态规划(2017年10月)【还差三道题】

    任务说明:这也是基础的动态规划.是在线性结构上面的动态规划,一定要掌握. P1020 导弹拦截 导弹拦截 P1091 合唱队形 老师给同学们排合唱队形.N位同学站成一排,音乐老师要请其中的(N-K)位 ...