蚂蚁金服总监杨冰:金融科技公司为什么要拥抱开源?

发表于 讨论求助 2020-08-28 13:12:56

互联互通如今,开源已经成为主流,整个信息产业已经从过去的闭源模式转换为现今的开源模式,各种开源公司纷纷创新不同的开源模式,其中以 RedHat、Google、Facebook 等公司所取得的成绩最为耀眼。

【编者按】近期,蚂蚁金服将会开源 SOFA最核心的两个组件——分布式事务框架和服务注册中心,这两个组件都是针对当前最火的微服务架构。其中,分布式事物框架是解决数据一致性问题的关键。服务注册中心则是服务治理的基础。在这两块开源后,SOFA 将成为一套真正完备的分布式解决方案。

作者采访了蚂蚁金服中间件团队的杨冰总监,就此消息向他求证,杨冰还讲述了 蚂蚁金服对SOFA 开源的思考,以及近期的规划。

文章转载自“Linux中国”,作者为“穿山甲专访”栏目编者老王,经编辑发布,供业内人士参考。


我们选择将 SOFA 中间件框架逐步开源出来,在贡献给社区的同时,也期待社区、合作伙伴甚至客户,都能够一起参与共建,形成行业标准和最佳实践。

——蚂蚁金服总监杨冰

如今,开源已经成为主流,可以说,整个信息产业已经从过去的闭源模式转换为现今的开源模式。各种开源公司纷纷创新不同的开源模式,其中以 RedHat、Google、Facebook 等公司所取得的成绩最为耀眼。

2018 年的时候,我曾经参与“开源社”主持的《2018 中国开源年度报告》的撰写工作,并建立了一个数学分析模型,以此来对中国的互联网公司的开源项目分析其活跃度和健康度。让我既感意外,也不意外的是,阿里系的开源项目占据了活跃度排行榜前五的第一、第二和第四;甚至在前五十个项目中,阿里系的开源项目占据了超过一半的份额!我不意外的是,业界一直对阿里在开源方面的动作和力度颇有感受;意外的是,这种力度还是超乎了我的想象。这其中包括阿里巴巴集团和蚂蚁金服等都贡献了相当可观的开源项目。

因此,这次遇到杨冰时,我就开源方面和他深入聊了几句,想了解一下蚂蚁金服是如何思考开源和践行开源的,是如何将开源与公司的商业价值有机地结合起来的。

缘何开源

作为一家商业公司,宣称自己开源,甚至也形式上开源一些代码,其实已经是很常见的事情了。但是,真正能将开源与公司的技术演进相融合,并能有效地助推公司业务发展的,却并不太多。这件事其实并没有那么简单——远非只是上传到 GitHub 那么简单。

根据业界的经验,在公司的技术产品开源方面,要将现有场景的代码开源,至少需要在已经运行稳定、结构清晰的现有代码基础上多付出 30% 的技术投入,对代码进行梳理、完善和通用化,才能做到初步的代码开源;而进一步要将这些开源代码维护下去,乃至于和公司业务线上的产品代码保持同步发展,多付出的技术成本还远远不止这些。作为一个互联网技术老兵,我对此深以为然。

那么,蚂蚁金服是如何说服公司决策层在尚未看到开源回报的前景下,同意付出这么多的额外代价来支持开源的呢?推动开源的力量是因何而来的?

“首先,开源是个共赢的模式,对于蚂蚁金服来说,开源可以扩大技术服务场景,为支付、金融等更多的客户提供服务,提升合作伙伴的效率。”杨冰说,“虽然,蚂蚁金服已经有很多的业务场景,也在很多场景下取得了超大规模的实践经验,但是,依然存在没有覆盖到的金融服务场景。而将技术开源出来,可以供更多的客户应用到其自身的场景下——这些场景有效的补充了蚂蚁金服的技术应用面,也为更完善的技术框架奠定了基础。因此,我们选择将 SOFA 中间件框架逐步开源出来,在贡献给社区的同时,也期待社区、合作伙伴甚至客户,都能够一起参与共建,形成行业标准和最佳实践。”

“其次,对金融服务来说,监管和自主可控的要求更多,”杨冰接着谈到,“客户也希望可以对其所采用的技术有更多的掌控。”开源是一种可以使客户和上下游产业共同参与和发展的可行模式。

“所以,其实并不是技术部门去说服公司决策层去开源,而是业务发展的自然选择,这也是一种合理的发展方向。”他总结道。这样的结果,其实是和当前流行的开源商业模式所暗合的。

“另外,如你所说,确实在开源时,我们做了很大的改造。以可扩展化的方式来层层构建 SOFA 框架的能力,保证 SOFA 的内部版本和开源的版本采用的是同一个内核。在开源时,剥离了特定业务的逻辑,而保持了公司内部的业务线上的代码和开源代码的核心是一致的。这样,只要公司的业务在持续发展,开源的代码就会一直维护和演进下去。所以 SOFA 的内部版本就是在开源版本之上扩展了内部逻辑和历史版本的兼容逻辑。开源版本的核心逻辑,内外是一致的,并在蚂蚁金服的生产环境中被广泛使用,同时会随着蚂蚁金服自身业务诉求的驱动不断的演进。”杨冰补充道,“但这是值得的,在为开源代码做改进时,也是为公司自己的业务做改进,这是双赢且可持续发展的。”

很多公司在初涉开源时,常常有疑虑,将核心技术开放出去,会不会导致竞争对手的技术提升,会不会造成更大的技术竞争压力?

“事实上,我们在最初准备开源时,也有讨论过这个方面。技术要被更多人用、更多场景用,才会有发展。而开放的技术才能带来团队的发展,因为技术是动态发展的,作为开源的一方,事实上在技术上是相对领先的。开源和掌握是两码事,掌握和用好又是两码事,所以,因开源而带来的竞争,其实是助推整个开源体系的发展的,是良性的、有益的。”杨冰说,“而从社区和行业现状看,大家都在开放,封闭的技术体系会逐渐落后。只有开放才能求同存异,共同发展。”

花絮:

我问蚂蚁金服的朋友,在你们开源中有什么有趣的“段子”吗?可以讲来听听。

我朋友过了几天后,给我发来了这样一段文字:

“参与双十一的中间件团队的常态是什么呢?

当晚,团队的常态大概就是喝着茶等零点高峰,高峰期过了之后,当然就是参与买买买啦。

我们很多的一些事情的初始的想法都是来自于双十一当天的夜聊,似乎在经历了紧张的零点高峰之后,脑细胞特别活跃。

对于基础设施团队来说,双十一算是一次大考的结束,考完成绩出来了,我们就想琢磨一些有挑战的事情,于是我们会天马行空地聊一聊对于下一年在技术上需要去做的事情。而在 2017 年的双十一当天,SOFA 的几个同学就围在一起聊了 SOFA 能不能开源?为什么要开源?开源和商业化之间的关系?开源后要做哪些事情等等,这个算是 SOFA 开源的第一次内部讨论。

从这次内部讨论之后,经过了大约半年的准备时间,我们在 2018 年 4 月份正式宣布开源并一直在逐步开源的进程中。”

他说,这就是他们憋了半天想出来的“段子”。

SOFA 的演进和开源之路

SOFA 中间件框架是蚂蚁金服自主研发的金融级分布式中间件,包

发表
26906人 签到看排名