过去的两年,是中国IT技术发生巨变的两年。从半导体的缺兵少粮,到基础软件的方兴未艾,从自主可控的紧迫需求,到科技企业的大力投入。高精尖技术、高素质技术人,成了整个社会关注的焦点。2021年,GitHub发布年度代码报告,目前在 GitHub 上的全球开发者用户共有 7300 万+,其中来自中国的开发者用户已达 755 万,位居全球第二!国内开源实现跨越式发展,国家政策的引导、基础软件的崛起、企业的大力投入……毫无疑问,这是本土开源最好的时代。处于开源热潮之下,如何把握开源发展趋势,迎接未来挑战,成为企业、开源组织与开发者不可不知的“必修课”。12 月 19 日,腾讯云 TVP 与腾源会联合主办的 TVP 开源闭门会正式召开,本期主题聚焦开源的对外修炼:开源发展趋势,通过三场前沿开源分享与一场圆桌尖峰对话,为国内开源的未来,蹚出一条路。开源生态发展新趋势,从技术开源到产业开放会议伊始,中国信通院云计算与大数据研究所云计算部副主任、腾源会导师 郭雪老师为我们带来了题为《开源生态发展新趋势,从技术开源到产业开放》的主题演讲。为与会者全面剖析了国内外开源的宏观发展趋势,以及社区运营、开源商业模式、风险治理等各个热点话题。开源生态发展现状与未来趋势郭老师在开场之初,就为我们抛出了一个经典问题——我们应该怎样理解开源这个概念?郭老师的答案是,开源有三种理解:1.开源是一种产品形态。它可以是软件、硬件也可以是开放数据,逐步去构建数字基础设施,构建技术的底座;2.开源是一种协作机制。它既是一种开发模式,又是一种管理方式,通过个体的自驱力沉淀为一种协作的模式;3.开源是一种理念。一种暗合中国古老文化“独乐乐不如众乐乐”的分享、开放的理念。由此,从个体到企业再到产业相连接,形成了一个广泛连接的开放生态。具体到开源生态的组成要素,郭老师总结了行业开源者、开源贡献者、开源项目、开源社区、开源使用者五大要素;商业模式、运营机制、风险治理三大环节。这其中比较有意思的点在于,国家层面开源的发展历程与开源项目生命周期正好相反:第一阶段风险治理;第二阶段自主开源技术发展;第三阶段产业开放生态发展。从产业发展的角度看,最近两年开源受到的重视程度远超以往,原因就在于契合了当下产业数字化的发展现状,通过技术创新、广泛协作、开放生态的有机结合助力产业互联网向前发展,最终实现了真正意义上的助推产业发展。未来,开源将不仅仅是一种产品形态,而是一种广泛的生产方式;开源协作模式也将逐渐下沉至各行各业;开源成为资本市场的新风口;各国通过制定政策法规推动开源协作。我国将逐步体系化构建开源生态,不论是开源首次列入“十四五”规划,还是头部公司将开源纳入公司整体战略布局,整个开源生态已呈现产业化发展趋势,形成产业供应关系。郭老师介绍了当前全球的开源生态发展现状,她指出:根据GitHub 2021代码报告数据,全球开源开源项目数量稳中有升,我国已成为GitHub开发者数量全球第二的国家,增长速度全球最快。在本土的开源代码托管平台Gitee上,2020年开源项目增长率达192%,达到了1500万,是2013年-2018年Gitee平台开源项目的总和。在开源项目领域方面,全球开源项目覆盖了全栈,而我国更多集中于前端领域。从社区的角度看,当前我国部分开源社区的活跃度已经实现了跨越式提升,但在整体上仍与全球先进水平存在差距。在以组织形式为载体的社区方面,全球基金会目前正逐渐显现出精细化与公共化发展的趋势,而我国首家开源基金会开放原子开源基金会成立后,也开始与各类开源行业组织协同发展,信通院重点依托云计算开源产业联盟、金融行业开源技术应用社区、人工智能产业发展联盟等行业及新技术领域产业资源,帮助企业运营开源项目。在当前的开源社区生态中,发展的断层现象尤为普遍。社区不注重治理与运营,导致没有充足的人力资源(开发者)与商业资源(商业模式)来支撑项目的优化迭代;用户在使用后不断发现的问题会导致社区资源大量消耗,没有充足的资源支持项目优化迭代,开源项目发展路径与实际用户需求出现偏差,会造成用户大量流失,导致社区渐渐“死亡”。要解决社区运营的痛点,吸引用户是前提,形成广泛应用社区是基础,建立良性的商业循环是源头活水,只有做到这三者的有机结合,开源社区才能长久地运转下去。谈到开源企业的商业模式问题,郭老师总结了两个独到的观察:科技公司实现技术引领和差异化服务的价值,传统行业看重生态开放和协同创新的价值。各行各业的企业本身,也在积极探索开源的创新路径。近年来,开源风险治理问题走上了风口浪尖,据数据统计,84%的代码库至少含有一个漏洞,漏洞含有比例近三年逐年增高,60%的已审核代码库包含高风险漏洞,增长迅速。从国家层面、企业实操方面,郭老师都具体介绍了当前开源治理的相关动向。最后,郭老师还将我国开源生态的发展趋势做了精细总结,具体见下图:中国信通院可信开源工作介绍分享最后,郭老师介绍了信通院在可信开源方面的相关工作成果。信通院秉承“政府智库 行业平台”的理念,致力于推动开源生态繁荣,最近几年在开源生态研究方面有蜚声海外的行业报告白皮书,同时依据开源生命周期建立了可信任的信通院开源标准体系,同时成立了相关行业开源社区,并提供了开源风险检测平台、开源生态监测平台等能力,同时打造了企业开源赋能计划,以体系化的手段助力中国开源生态发展。开源软件商业化路径和投资策略云启资本合伙人、腾源会导师 陈昱老师带来了题为《开源软件商业化路径和投资策略》的主题演讲,他从资深投资人的专业视角出发,为大家剖析了开源软件公司商业化发展可以借鉴怎样的路径?开源商业化在未来有哪些机遇与风险的关键问题。开源的商业化价值陈老师表示,作为投资人,在观察开源初创企业时,一个重要的参考就是二级市场。从2018年以来,主要的几大开源软件公司持续兑现高增长业绩,获得资本市场认可,板块估值快速提升。与此同时,开源软件公司资本的退出周期也在显著加快,全球开源软件公司获风险投资数量与总金额不断攀升,展现出了VC(风险投资)对于开源商业价值的认可。开源软件的商业化模式一直是经典的行业话题,陈老师介绍道,开源的商业化发展大体可以分为4个阶段:1.开源0.0时代:1980s-1995,以自由软件运动为代表的风潮,还未演化为开源理念,更多是以Geek的个性化软件需求出发,偏向于理想主义。2.开源1.0时代:1995-2005,代表为Red Hat和MySQL,这个时候软件越来越复杂和专业,专业可靠的技术支持提高软件的稳定性创造了新的商业价值。3.开源2.0时代:2005-2015,代表为Cloudera和confluent,这个时候软件体系化生态逐渐完善,出现了开放核心 Open-Core 提供差异化商业版本的商业模式。4.开源3.0时代:2015-现在,代表为Databricks和MongoDB,在公有云兴起后,托管Cloud Hosting,作为一种服务托管在云上,开启了全新的开源商业新模式。陈老师表示,开源并非只是简单的把代码公开,而是在于优秀的开源项目能够为软件的开发和产品获客提供杠杆,通过开源运营的根本性动作,可以获得来自于社区的开发、反馈与人才储备,进而精准地让开源商业化公司触达用户形成转化。开源公司的商业化是一个相对漫长的过程,陈老师从很多开源软件公司的共性中总结了一个开源商业化的“3-3-3”模型:从产品开发的种子轮/Pre-A轮,到社区运营的A轮-B轮,再到商业化探索的C轮及以后,最后到IPO,前面的每一个阶段可能都要花费2年到3年左右的时间。陈老师以知名开源创业公司PingCAP为例做了详细分析:PingCAP公司成立于2015年,到今年历时7年,已经进入到了商业化的阶段。2015-2017年专注产品研发,2018年开始做开源社区的运营和推广,到2020年发布开源3.0云原生版本、收获国内外大量头部客户,开始走向商业化成熟的阶段。这个历程就是非常标准化的“3-3-3”模型案例。纵观近几年的中国开源,可以很清晰地看到国内对开源已经从拿来主义转向于反哺社区,中国企业、开发者在GitHub等开源平台上的贡献日益增长,已经成为了开源社区的中坚力量。但对于开源软件商业化而言,也可能遇到诸多风险,比如开源项目与公有云厂商的竞争与合作,比如开源项目技术的归属问题等,这些都是开源软件公司要去解决的问题。分享最后,陈老师表示,作为国内第一家系统性布局开源的投资机构,云启资本将持续加注开源,陪伴优秀公司共同成长。云原生开源前瞻与下一代云原生平台腾讯云技术专家、Clusternet项目创始人、腾源会导师 徐迪老师为我们带来了题为《云原生开源前瞻与下一代云原生平台》的主题演讲,为与会者分享了云原生开源的最新动向,以及Clusternet 开源项目的深度介绍。云计算的未来趋势徐老师首先从市场发展的现状与动态为我们提供了切入视角,他表示当前市场环境下,云已经无所不在。无论是移动支付、5G 直播、健康码、大数据出行还是城市治理,都可以看到云计算的身影。2021年公有云服务市场预计规模达 396 billion,到 2022 年增长 21.7%,达到 482 billion。此外,到 2026 年,企业 IT 部门的总开销的 45%将花费在公有云服务上,目前比例还不到 17%。随着数字化转型的的需求越来越大,企业上云的动力也将变得越来越强劲,场景也会越来越多样化。也就是在这样的场景下,徐老师提出了“分布式云是未来”的趋势判断。为什么这样说呢,徐老师介绍道,当前 IoT 设备规模每 5 年就会翻倍,云计算的使用场景越来越多,越来越广泛,尤其是在边缘。5G、直播、视频号、线上演唱会,场景越来越多,很多场景是以前我们从来也没有接触过的。让计算发生在靠近用户的地方,是云的未来发展趋势。徐老师预测道,2024年分布式云将运行在绝大多数的云平台上。在今年的Gartner报告中,分布式云也成了很重要的焦点,在各大云厂商也有很好的发展。分布式云的优势、挑战与缺失点作为面向未来的云计算新形态,分布式云的主要优势体现在以下方面:1.成本优化 (Cost Effective)2.更好的弹性及灵活性 (Elasticity & Flexibility)3.避免厂商锁定 (Avoid Vendor Lock-in)4.第一时间获取云上的新功能 (Innovation)5.容灾 (Resilience & Recovery)6.数据保护及风险管理 (Data Protection & Risk Management)7.提升响应速度 (Network Performance Improvements)虽然分布式云看上去很美好,但在实际落地过程中也有很多问题需要解决,比如:1.异构的基础设施2.一致性的功能及能力3.SLA4.安全性5.容灾与隔离6.跨地域、跨机房应用部署及管理7.弹性调度及自动伸缩8.存量资源接入徐老师表示,分布式和多云部署的日益普及,意味着组织正在跨许多环境运行 Kubernetes,包括内部环境、公共云和边缘。虽然这提高了应用程序可用性,减少了延迟,并使扩展遗留应用程序和云原生应用程序变得更容易,但它增加了复杂性,因为每个集群都需要单独部署和管理。今年CNCF发布的技术雷达里也重点提到了分布式云的趋势下,多云、多集群管理的难题。在这样的背景下,多集群协调的缺失点呼之欲出,这也是我们需要 Clusternet 的根因所在。Clusternet 开源徐老师介绍道,腾讯联合 6 家合作伙伴一起开源了 Kubernetes 多集群管理与应用治理项目——Clusternet。Clusternet (Cluster Internet)是一个兼具多集群管理和跨集群应用编排的开源云原生管控平台,打通了跨 VPC、跨地域、跨云的集群管理。 其面向未来混合云、分布式云和边缘计算场景设计,支持海量集群的接入和管理、应用分发、流量治理(开发中)。简单来说,Clusternet 在保证无侵入且轻量化的基础上,创建了一张集群网络,对子集群进行纳管,并支持多集群的应用编排与治理,并已于近期提交 CNCF Sandbox 申请。具体而言,Clusternet的功能有:统一管控各类 Kubernetes 集群集群管理 Pull / Push 模式轻量化,开箱即用,易于部署和维护跨集群的服务发现及服务互访Kubernetes 原生,没有额外的学习成本完善的 RBAC 能力,访问任一子集群完善的接入能力:kubectl plugin / client-go支持分发各类原生应用 / CRD / HelmChartkubectl clusternet plugin架构层面,Clusternet支持异构的基础设施,整体架构在保持简洁的同时,具备强大的功能特性。不管集群运行在怎样的环境里,Clusternet 都可以提供直接访问的能力,一套架构适应各种场景。在应用分发方面,Clusternet 也做了一套完整的模型,可以应对多种应用资源的分发模型场景,用户使用的时候不必因为某些资源做一些特殊的操作。另外,Clusternet 还提供了两阶段优先级的Override策略,以保证最终的生效。Clusternet 在保证无侵入且轻量化的基础上,创建了一张集群网络,对子集群进行纳管,并支持多集群的应用编排与治理。分享最后,徐老师也根据一个案例为参会者拆解了Clusternet的使用。圆桌对话丨如何与开源项目共同成长本场圆桌对话聚焦于如何与开源项目共同成长,由Kyligence技术合伙人、腾讯云TVP、腾源会导师 马洪宾担任主持人,邀请了SphereEx创始人&CEO、Apache软件基金会Member、腾讯云TVP、腾源会导师 张亮;Zilliz合伙人&首席布道师、腾讯云TVP、腾源会导师 顾钧;StreamNative联合创始人、腾讯云TVP、腾源会导师 翟佳参与论道。张亮:SphereEx创业以来的身份转变与困难挑战投身技术创业以后,身份从工程师转变成CEO,体验和之前的项目管理、技术团队管理截然不同。我当时的出发点很简单,觉得从0开始把开源社区做起来了,也没有任何利益冲突,在这种情况下都能把开源社区治理得相对井井有条,所以觉得去管理一个公司应该也比较简单。但实际上的公司管理,难度远比我最初的想法大得多。很多之前完全没有接触过的东西都要自己去做,比如财税相关的、融资相关的等等,每天都需要跟不同的人打交道。而我一开始创业其实是希望有一些安静的时间去写代码,结合各种资源将其注入到社区里,去做更多的事情,但创业以后已经基本没有大块的写代码的时间了。所以说开源创业前后的角色转变,其实是有一个从面向社区转为面向公司;从面向程序转为面向交流;从思考代码转为思考战略;从自己做转向指导别人做的过程,在这个过程中,CEO需要学会取舍,面向最重要的几件事。另外一方面在于,ShardingSphere开源5年以后,我们开始出来做商业化的创业,产品的积累打磨其实已经有了深厚的底子,这也导致团队的扩张速度很快,也带来了管理成本的提升。我现在更多时候需要适应“遥控”的方式,让团队的齿轮飞转起来。未来的挑战其实对于所有做开源创业的公司都是一样的,开源创业并不是说代码技术好,商业化就能顺理成章。商业化的考虑一定是从创业第一天起就开始思考自己的商业模式,我们现在在做的,未来也还会要持续去打破的界限,都在于此。顾钧:开源带我走出中年危机我的个人经历和大多数技术创业公司人员的背景不太一样。我是一个技术人员,也是一个数据库工程师,但在之前的从业经历中,比如工行、IBM、摩根士丹利等等,其实一直是在一线的金融环境下接触生产系统,生活在一个甲方环境下。这种环境意味着,金融的行业特性决定了从业者压力大,但工程师属于支撑性部门,受到的重视程度偏低,未来的成长空间受限。在这样的环境下,不论是技术交流的氛围,还是未来的职业发展通道,都比不上在一个纯技术公司中工作。所以我后来选择了离开甲方环境,回到纯技术公司的环境下,借助开源社区,这种分享和交流确实帮助到了一些人,也学到了很多东西,这是对我个人来说特别正面、积极的效果。我并不觉得投身开源以后会遇到新的迷茫,但的确会有一些新的挑战出现。比如商业化的挑战,虽然云服务 SaaS的方式可以做到,但怎么样去实现目标,总还有各种各样的挑战需要去解决。我认为在这个过程中,更加快速、频繁地去尝试和验证实现目标的路径是非常重要的。翟佳:从技术专家到创业者的艰辛与收获今天的几位都有一些共同点:中年男人,一线工程师出身,都经历着从0到1组建公司的过程,大家都有各自的故事与体悟。在我之前工作的时候,虽然做了开源项目,但更多还是以公司需求、功能开发为主,这些更多与自己的知识背景和前期积累相关。在完成自己的任务以后,我会做一些技术背景以外的事情,在当时,开源可能是一种兴趣和爱好。但在创业公司以后体会就不一样了,工程师资源一直都是问题,就像革命的一块砖,哪里需要往哪搬。有用户提需求,公司要解决问题,即使自己不熟悉这个领域也要硬着头皮上,反而突破了自身的一些界限,也开拓了很多技术思路,这是(创业)早期感觉最不一样的地方。与此同时,前期公司文化和流程构建也是很重要的一个方面。StreamNative由于在成立之初就有中美两个团队,一直采用远程协作的办公模式,异步沟通,个人对时间的掌控也会更加容易。我们发现让公司流程和开源流程保持一致,这种高度公开、透明的模式会带来整体效率的提升。另外,团队目标的统一也是需要多注意的地方。在创业公司,不同团队的背景、所做的工作可能都很不一样,在团队配合过程中,如果大家都能知道有一个统一的目标,比如社区的小伙伴做活动时了解工程师团队的目标,工程师团队也了解市场团队的目标,各个团队之间目标打通,大家会朝着共同的目标努力,会是一个更好的效率扩展的实践。开源商业化思路与社区的意义翟佳:StreamNative背后的开源项目是Apache Pulsar,它有两个重要的标签,一个是云原生,一个是统一消息流。前者扎根于云原生的技术浪潮下,得到了迅速发展的机会,后者做了统一的事情,解决了业务之间的消息交互痛点问题。我们的社区推广、商业化思路也都是围绕这两个方向展开。具体的商业化历程可以分为:第一阶段,社区布道;第二阶段,打磨更高效的技术路线,向商业化靠拢;第三阶段,推出产品,快速打磨。总体的服务模式也是通过SaaS模式,快速获取第一波来自欧美市场的客户及对产品的反馈。社区的成长与成败,对于开源商业化的模型是一个强绑定的关系。在我们公司从创立到现在接近三年的时间里,也一直把社区工作当成公司最重要的工作。比如帮助社区爱好者加入社区,帮助开源代码爱好者参与贡献,帮助用户内部落地Pulsar等等。开源这个漏斗模型决定了你只有把基础工作做好,才会有商业化客户进来。顾钧:我之前一直在摩根士丹利这样的传统金融机构中工作,发现行业的整体趋势一定是向云计算靠拢。现阶段的就业环境也决定了,无论是欧美还是国内,系统工程师的吃香程度一定是偏低的,年轻人也不愿意再去学习基础软件了,所以这种市场环境也决定了软件售卖的模式受众越来越少,只有提供云服务才能是商业化的出路。大家都在走SaaS的模式,但其中都会各有不同。比如国内的发展趋势相对落后于欧美成熟市场,云服务的渗透和采纳会晚几年,但这一天终究还是会到来。所以目前我们更多尝试先从北美地区提供云服务,做初步的商业化尝试。对于我们这样一个相对来说比较新,没有标准解决方案的领域,如果提供云服务的产品,用户的使用习惯就会变得非常重要。如果说我们所做的数据库是一个特别流行的数据库,所有人都用它的话,他去选择云服务的时候也一定是基于这个数据库的云服务。从这一点来讲的话,社区所帮助形成的这种使用者的习惯的话,对于未来的云服务的采用是非常的重要的,或者甚至是一个先决条件。所以没有一个良好的社区的话,其实后面的商业化也会变得非常困难。张亮:商业化公司的存在是开源社区连续性的保证,我们提供的都是云上订阅制,面向上云的服务还有toB的线下服务、包括咨询和兜底的服务等等。社区对于商业化公司的重要性,我觉得有三个方面:第一,品牌效应。在技术、产品都差不多的情况下,开源产品的品牌力会更好,同等条件下,开源品牌是决胜关键之一;第二,开发模式。开源公司不仅有员工开发,也有大量社区用户的开发,提供更好、更活跃、更极致的代码。第三,获客模式。开源能够降低获客成本,也面向全球的客户,这是闭源项目很难做到的事。?圆桌大咖们的交流结束后,主持人马洪宾老师做了精彩的总结:从商业模式上看,大家都锚定了云计算的SaaS模式,这条路应该是目前全球公认的开源商业化路径。从社区的意义看,开源社区本身既具备技术的试验田作用,又承接着培育用户习惯的作用,还是商业化公司赖以存在的根基所在。二者的紧密结合,才是通往发展快车道的方向。很多年轻程序员或缺少开源实践,或入职时间不长,没有接受过真正开源文化的熏陶,作为管理者也有责任引导他们走上开源的康庄大道。写在最后开源和商业化的“矛盾”问题,长久以来一直困扰着投身开源领域的技术人们。当用爱发电的崇高理想和面包牛奶的现实困顿交织在一起时,这群以开源项目为切入点踏上千军万马独木桥的创业之旅的技术人,就成了撬动世界的逐梦人。如今,开源和商业化不再针锋相对,不再剑拔弩张,而是你中有我,我中有你。开源可以是高山流水,也可以是市井闲谈,为众人抱薪者,也不必冻毙于风雪。我们终于可以称得上一句,这是开源最好的时代。TVP 自成立之初,便希望能够“用科技影响世界”,让技术普惠大家,践行科技向善的初心与本心,原来“开源”的这条路上,从来吾道不孤。TVP,即腾讯云最具价值专家(Tencent Cloud Valuable Professional),是腾讯云授予云计算领域技术专家的一个奖项。TVP 致力打造与行业技术专家的交流平台,促进腾讯云与技术专家和用户之间的有效沟通,从而构建云计算技术生态,实现“用科技影响世界”的美好愿景。 |