行业互联网|对话Dubbo唤醒者北纬:阿里核心电商业务也在用Dubbo



行业互联网|对话Dubbo唤醒者北纬:阿里核心电商业务也在用Dubbo
本文插图

导读:2008 年 , Dubbo 项目诞生;2014 年 , 由于内部团队调整 , Dubbo 暂停更新;2017 年 , 北纬带领团队重新唤醒 Dubbo , 并将其捐献给了 Apache 基金会 。 短短 15 个月 , Dubbo 便从基金会毕业 。 如今 , Dubbo 已经毕业一年 , 越来越多开发者开始询问 Dubbo 3.0 到底有哪些变化 , 阿里巴巴内部到底用不用 Dubbo , 这是不是一个 KPI 开源项目以及 Dubbo 和 Spring Cloud 之间到底是什么关系 。 本文 , 将独家对话 Dubbo 项目二代掌门人北纬(GitHub ID@beiwei30) , 听他一一解答上述问题 。 Dubbo 回归的这些年
Dubbo 项目诞生于 2008 年 , 最初只是一个阿里内部的系统;2011 年 , 阿里 B2B 决定将整个项目开源 , 一年时间就收获了来自不同行业的大批用户;2014 年 , 由于内部团队调整 , Dubbo 暂停更新;2017 年 9 月 , 就在该项目将近 3 年没动静的时候 , Dubbo 连续发布了好几个新版本 , 并且开始在内部招募对 Dubbo 感兴趣的同事 。 新版本背后的主力开发团队是阿里巴巴中间件团队 , 其中一个最重要的人就是北纬 , 他从 2017 年 7 月开始全面接手 Dubbo 。
“我知道这是一个特别出名的开源软件 , 但是很长一段时间没有人维护 , 我当时在阿里内部的工作方向和 Dubbo 完全一致 , 也是做服务框架 , 所以对于认知 Dobbo 并不是非常困难 。
接手之后 , 我们开始没有做太多事情 , 只是对外表示会重新维护这个项目 , 就收到了很多积极的反馈 , 这让我非常惊讶 , 很多开发者也在问我们可以重新维护多久 。 随着对这个项目的深入了解 , 我发现国内很多大型厂商 , 甚至传统国企都在广泛使用该项目 , 当时也觉得自己的责任重大 , 不知道可不可以把这个项目做好 。 ”
彼时 , 北纬面临的第一个问题是:在 Dubbo 主版本停止更新的这些年 , 业界出现了很多 Dubbo 的分支版本 , 不同的团队都在维护自己的分支 , 如果不重视这一客观事实 , 很可能导致只有主版本在快速迭代 , 其他社区成员根本参与不进来 , 这样的开源意义不大 。 采访中 , 北纬表示:“对 Dubbo 来说 , 这些分支版本同样重要 。 我们还是希望可以给大部分深度用户一条安全的合并路径 , 根据我们的主要版本进行迭代 。 在这个过程中 , 我们和几大主流分支版本的开发团队都进行过交流 , 他们也非常愿意同主版本进行合并 。 ”
在 Dubbo 正式复出之后 , 北纬也听到了一些开发者的疑问 , 比如这次能维护多久之类的 。 “既然放到阿里巴巴下面 , 开发者有这样的担心 , 那我干脆就把它放到中立的位置上 , Apache 基金会是一个很好的选择 , 因为 GPL 协议太偏理想化 , Dubbo 项目更多用在商业化公司 , GPL 协议可能会影响后续推广 。 相对来说 , Apache 协议比较实用 。 ”
正是这一决定让广大开发者见到了最短时间从 Apache 基金会毕业的项目:2019 年 5 月 21 日 , Dubbo 在仅用时 15 个月的情况下从 Apache 基金会毕业 。
“我记得 , 与 Dubbo 同期毕业的有五个项目 , Dubbo 是用时最短的 。 我们并不着急让 Dubbo 毕业 , 但我们原来预期的时间比 15 个月还要短 , 但碍于基金会的沟通流程 , 时间周期会相对拉长 。 ”
Apache 基金会的特点是宽进严出 , 也就是说进去可能相对容易 , 但毕业是难的 , 而且非常强调公开透明 。 在国内 , 大部分人习惯通过微信和钉钉沟通 , 响应时间也会比较短 , 但 Apache 基金会是一个面向全球的组织 , 所有交流都基于邮件传递 , 一项提议必须在 72 小时内(考虑到全球的时差问题)没有成员提出反对才可以被采纳 , 这些流程都让时间周期变得更长 。
如今 , Dubbo 项目已经毕业一年有余 , 整个社区拥有 18 名 PMC 成员 , 57 名 committer , 以及多达 370 名贡献者 , 社区代码比例已经超过 50% 。 在采访中 , 北纬表示 , 过去一年 , Dubbo 在多语言建设方面先后从社区收获了 JS、Python、Erlang、PHP、Go 的实现 , 特别郑重感谢千米网、乐信以及其他开发者们 , 为社区带来了多语言支持 。 提到 Dubbo , 大家第一个想到的可能还是 Java , 但目前 Dubbo go 已经在 1.5 版本追平 Dubbo java 2.7 的特性 。 目前正在和 Java 齐头并进 , 一起规划 Dubbo 3.0 中云原生的路线图 。


推荐阅读