架构师(2019年11月)

架构师(2019年11月)

发布于:2019-11-08 08:00
本期推荐内容:我从高级软件工程师身上学到的那些经验与教训;阿里巴巴的研发模式是如何演进的?
下载此书

卷首语:开源的复兴和挑战

作者:万佳


有人说,如果没有开源软件,我们的世界将无法运转,至少无法良好地运转。


这句话很中肯。


提到开源,有人会想到 Linux、Linux 之父、《大教堂和集市》和 Redhat。



今天,开源影响世界。一位名叫 Scott Gilbertson 的人说,“从 Web 服务器到互动式咨询服务站,再到挖掘 Facebook 消息的大数据算法,现在几乎所有与我们交互的计算机系统,至少或部分地使用了开源软件。”


如果说开源最初只是一些黑客“放荡不羁爱自由”,那么现在的开源则支撑着商业社会的运转,是一股极大的创新动力和源泉。


想想 20 年前,微软 CEO Steve Ballmer 一度宣称 Linux 为“癌症”,而如今,微软却拥抱 Linux,参与开源,不仅成为 GitHub 上最大的贡献者,而且以 75 亿美金收购它。现在,微软在自己的技术栈中使用开源软件。



毫无疑问,大公司的参与极大地推动了开源的发展,像谷歌有超过 2000 个开源项目,甚至连新兴的共享经济企业 Airbnb 也有 30 多个开源项目。


并且,一些开源公司获得不错发展。2008 年,MySQL 被 Sun Microsystems(后被 Oracle 收购)以 10 亿美元收购。对开源公司而言,10 亿美元是个不错的成绩。


然而,后来的事实证明 10 亿美元只是基础,从 Cloudera、MongDB、Mulesoft、Elastic 和 GitHub,它们都是数十亿美元 IPO 或并购交易的一部分。


最大的代表还是 RedHat,1999 年这家公司以 36 亿美元上市,现今年收入超过 30 亿美元,堪称全球最大的开源公司,并且今年被 IBM 以 340 亿美元收入囊中。



上图显示,过去 30 年,大约有 200 家公司是以开源技术为核心的。这些公司总共筹集了超过 100 亿美元的资本。过去 10 年里,它们的交易规模越来越大。


正如一名资深开源从业者 Peter Levine 所言,开源进入一个良性循环。


他说,”开源的历史表明,它的兴起是由于技术和商业创新的良心循环。在技术方面,开源是创建软件的最佳方式,因为它加速了产品反馈和创新,提高了软件的可靠性,扩大了支持范围,推动了采用,并汇集了技术人才。经济利益创造了一个良性循环,我们拥有的业务创新越多,开发人员社区就越大,从而刺激了更多的技术创新,增加了开源的经济激励。“


不过,2019 年多家开源公司的动作表明,开源依旧面临着挑战。


过去一年,像 Redis Labs、MongoDB 和 Confluent 这样的公司都更改了软件许可证,从原来的开源许可证转向更严格的条款,限制软件功能,使其不再属于开源软件。


MongoDB 是全球第五大最受欢迎的数据库,属于 MongoDB 公司。MongoDB 数据库非常擅长存储非结构化数据,比如图像,它可以像处理那些传统的数据类型一样处理图像。众所周知,从 Facebook、Twitter 到微博、微信,大量的非结构化数据爆炸式增长。


作为全球使用最广泛的数据库之一, 从谷歌、Code Academy 到 Foursquare,现在很多公司都在使用 MongoDB。


并且,这家公司还创建了一种新的开源许可,公司 CTO Eliot Horowitz 认为,随着计算机技术进入云的新世界,有必要采取一些措施对开源软件业务进行保护。 对此的解释是,在当前的云环境下,开源社区需要重新思考并有可能更新原来的开源许可,以“应对新环境中的新挑战”。


从本质上来说,这些挑战来自于 AWS、Google Cloud 和微软 Azure 这些巨头,因为他们都有足够的能力将开源软件打包成自己的服务,然后转售出去。AWS 或 Azure 打包 MongoDB 并将其作为基于云的 SaaS 服务(Software as a service)的一部分进行售卖,这样的问题在于,这些服务直接与 MongoDB 自己基于云的 SaaS 服务——MongoDB Atlas 形成了竞争。这种情况下,受到威胁的不是 MongoDB 的源代码,而是 MongoDB 自己的 SaaS 服务,而这恰恰是该公司的主要收入来源。


为应对这种挑战,MongoDB 就试图将自己的许可证从 GNU 通用公共许可证(GPL)更改为所谓的服务器端公共许可证(SSPL)。


毫无疑问,随着云公司的发展,开源公司和它们之间面临的冲突无疑会加剧。


不过,事实证明,开源蕴含着一种持久的生命力,是有伟大前途的。

目录

热点|Hot


Docker 麻烦大了


理论派 | Theory


谷歌开源内部代码评审规范


阿里巴巴的研发模式是如何演进的?


推荐文章 | Article


我从高级软件工程师身上学到的那些经验与教训


观点 | Opinion


以前,日志是我们的命脉 现在,日志是我们的责任


专题 | Topic


那些被 BAT 们“放弃”维护的开源项目


评论

发布
暂无评论