来源 | 《开源观止》

作者|郭炜(郭大侠)

近些年来开源在全球成为越来越火爆的话题,越来越多的开源项目获得了大量的投资或者最终上市。开源是根据一些开源协议把代码公开在互联网上并拥有开源社区和使用者的一种开发模式,那么开源项目代码是开放的,又是如何能够形成商业闭环形成商业收入的呢?

笔者参考了全球多个论文网站和公司材料,最终总结了全球大部分开源项目形成收入的商业模式,一共 22 种,如果你是开源爱好者或者有自己的开源项目,你可以从这些开源商业公司的商业模式中找到一些启发。我也为此建立了一个开源项目在文章末尾,如果其中有缺失或者不准确的地方也欢迎大家直接在项目当中留下 issue 或者给出 PR。

  • 核心开源,非核心闭源

首先最常见的就是软件核心代码部分开源,非核心部分闭源从而通过各种形式收费的商业模式,细分下来这种收入模式一共有 4 个子类别:

第 1 类收费模式是开源商业 SaaS 模式,也就是核心代码开源,但是商业的 SaaS 云服务背后的代码闭源,且其中部分功能是开源版所没有的。比较典型的就是我们耳熟能详的 Databricks,它开源的 Apache Spark 是以 Apache 协议开源的,但是 Databricks 的云服务是闭源的,且其中的性能和功能要远超过其开源的 Spark 版本。

第 2 类就是 open-core 商业软件模式,也就是核心代码开源,但是部分功能代码是闭源,最终形成了闭源的代码软件进行售卖。比如大家最熟悉的支持开源 Apache Hadoop 的 Cloudera 公司所售卖 Cloudera Data Platform 就是这种软件模式的代表。当然随着云化的发展,这些以软件为初始售卖的商业公司,现在也都提供了自己云版本。但依然有很多常见开源软件是利用这种模式去售卖的。

第 3 类是 Plug-in 收费模式,软件本身都是开源的,但是它上面的插件是收费的,这些插件可以帮助这个软件更快地在行业当中提高它的使用效率或者完成特定的目标功能,部分 CAD 开源软件公司使用这种商业模式。

第 4 类是素材收费模式,也就是软件本身是开源的,但是它在运行或者使用时需要相关的素材,而这些素材是需要购买的。这种商业模式在游戏引擎方面比较常见,因为引擎本身只是一个计算核心,而周边的材质配齐了才能够快速开发相关的游戏,这个商业模式例子是 Arx Fatalis,Catacomb 3-D 等这样的引擎。

上面介绍的 4 类其实都是核心代码开源,但是周边有部分的能力是要收费的模式。

  • 托管和整合

第 5 种就是我们常见的云托管模式,它的代码几乎和开源项目完全一样,只在云账号和相关的服务上面有略有不同,用户无需自己再去安装开源软件,也不用雇相关人员进行维护开源软件,直接使用相关的服务即可,比较典型的就是 MongoDB、Elastic 公司提供的托管服务。

第 6 种是硬件和开源软件整合到一起的一体机模式,例如,当年的 Sun 公司将开源的 Solaris 捆绑在自己的服务器上面进行售卖,最终的用户不需要自己再安装软件调试或者适配也可以直接使用硬件提供商提供的相关开源软件。

上面两种核心的商业模式其实都是帮助企业节约安装调试和部分运维成本而出现的商业模式。

  • 软件市场模式

这种一种更为宏大的生态型商业模式。

第 7 种是软件市场(marketplace),这种商业模式一般出现在操作系统或者用户量极大的基础软件。例如 Android,Mozilla 的 Firefox,他们有庞大的用户使用基础。同时很多人会基于这个软件环境开发自由软件或插件,当用户购买他上面的这些软件时,公司通过收取中间的抽成来实现收入。

  • 专业服务

第 8 种是提供普通运维和问答服务来进行(Professional Service),例如 Hortonworks(被 Cloudera 收购之前)的 HDP 和 Redhat 都是这种模式。它的软件代码是和开源同一套代码,企业需要支付支持和咨询费用来确保这些软件正常使用。

第 9 种是软件本身开源,通过升级服务收费来进行收入的。这种一般软件本身非常容易使用,但是它自身的数据却非常重要,每次升级的过程当中,用户为了保证企业数据完整性以及升级之后的软件稳定性,会购买专业开源原厂公司的升级服务。

  • 售卖代码

第 10 种是售卖软开源软件的二次分发授权进行收入,例如大家熟悉的 macOS 基于 BSD Unix operating system kernel 专属权进行开发的,那么 BSD Linux 靠此授权来获得收入。

第 11 种是售卖同样开源代码软件且提供相关服务来进行收入。例如 ardour 和 radium,他们是售卖一模一样的开源软件的二进制代码以及相关的服务来进行收入,一般这种模式小型软件居多。

  • 延迟开源

靠商业软件获得收入之后再进行开源的模式。这样的方式可以保证最新版本的商业收入,同时能保证开源社区的活力。

第 12 种开源商业模式就是延迟开源模式,也就是新版闭源,旧版本开源的模式,比较典型的就是 MariaDB Corporation。它的新版本都是商业版,但当他研发出更新的商业版本之后,他原来的商业版就会被开源出来让大家使用。

第 13 种叫退市开源,这种模式是商业软件已经基本上完成了它的商业生命周期,在退市的时候,它会被开源出来。很多游戏软件其实都是这种模式,所以我们能看到很多的 MOD 游戏模式都是基于这样的退市的游戏软件开发出来的,比较典型的就是 id Software and 3D Realms 公司相关的游戏软件。

  • 围绕开源周边服务

第 14 种开源商业模式是卖认证。软件本身是开源的,但是它所提供的基于该软件的相关内容或相关服务要收费,因为它是软件和模式的发起者。所以,它可以通过认证的模式来进行收入。经过他认证的体系会更加权威,用户可以更加放心地购买,比如早期的 Unix v3 v8 的认证,和现在的 Moodle 模式。

第 15 种开源商业模式是卖培训和周边的参考资料,开源软件本身不一定是由公司建立的,但是他可以卖相关培训和出版相关资料进行收入,例如 O'Reilly 出版公司就是以售卖开源书籍著名的。

  • 利用开源社区的用户流量

第 16 种是经营开源社区合作来进行收入。例如比较著名的谷歌的开源之夏(GSoC),它的收入模式就是帮助各种社区组织开发者经营活动来实现部门收入。

第 17 种是售卖开源软件上的流量赚取费用。软件本身是开源的,用户流量多了,软件利用其中的流量进行收入。在谷歌 chrome 插件里面最流行的 AdBlock Plus 就是如此,每年谷歌都会要付大量的费用来让他不 block 来自谷歌的广告。AdBlock Plus 靠此来进行收入。

  • 有偿开源

下面两种都是参与开源项目的公司或个人进行收入的方法。

第 18 种叫悬赏开源,也就是在开源社区里面悬赏相关任务,最终开发者完成相关任务。获得相关奖励,最终实现个人和公司的收入。比如 Mozilla 曾经悬赏志愿者或公司去解决它的安全隐患然后付出相关费用。

第 19 种叫做众筹。也就是一个开源项目,会对他的用户进行预售,筹划到一定的金额后,再雇佣开源开发者完成这个项目,并且以开源的形式开放出来,例如 OpenGL 4.3 extension for the Mesa librar 就是这种模式开发出来的开源项目。

  • 捐献

下面的两种开源都是比较佛系的。不靠软件本身赚钱,而是靠周边和捐献来获得收入维持。

第 20 种是接纳捐献来获得收入。例如 Mozilla Foundation,每年都会受到 Google 大量的捐赠来维持整个 Mozilla 基金会的运作。类似还有中国的华人开发者尤雨溪做的 VUE 也接受了各种公司大量的捐助。

第 21 种是售卖品牌周边进行收入,例如 Mozilla Foundation 和 Wikimedia Foundation 都有相关的情怀 T 恤或者马克杯。最近的 Apache Con Aisa 个人票当中的飞盘、贴纸、杯子、帽子,其实都是周边售卖获得收入的。

  • Web3 to Developer

第 22 种,也是最后一种,是我非常看好但还是在发展过程当中的开源收入模式,这就是 Web3 to Developer。开源社区本身就是一个 DAO,只不过目前的开源还很难通过衡量个人的贡献来获得收入。开源软件也很难变成一个像 NFT 一样的组织来获得收入和获利。但是我觉得随着 DAO 理论的发展和相关技术的进步一定会解决相关的问题,从而真正实现每一个开源贡献者劳有所得,每一个开源公司贡献有所收获,每一个投资者投资都有回报,这才是开源社区的最终解决方案。

综上,我花了挺长时间,整理了各种各样的开源到商业的玩法,我也在 Gitee 上建立了一个开源商业的项目,并把这篇文章和表格进行了开源,欢迎大家在里面去评论或者 PR 或者提 issue 来贡献,共同把开源社区的商业化做到极致,感谢各位。

项目地址:https://gitee.com/William-GuoWei/OpenSource_BusinessModel

------

我们创建了一个高质量的技术交流群,与优秀的人在一起,自己也会优秀起来,赶紧点击加群,享受一起成长的快乐。另外,如果你最近想跳槽的话,年前我花了2周时间收集了一波大厂面经,节后准备跳槽的可以点击这里领取!

推荐阅读

  • 五款提升代码质量的IDEA插件,赶紧选择适合你的装上吧!

  • GitHub Copilot 遭 90 亿美元的集体诉讼!

  • 微软贡献 Linux 内核代码,可运行多个 Windows

··································

你好,我是程序猿DD,10年开发老司机、阿里云MVP、腾讯云TVP、出过书创过业、国企4年互联网6年。从普通开发到架构师、再到合伙人。一路过来,给我最深的感受就是一定要不断学习并关注前沿。只要你能坚持下来,多思考、少抱怨、勤动手,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你看好一个事情,一定是坚持了才能看到希望,而不是看到希望才去坚持。相信我,只要坚持下来,你一定比现在更好!如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯,帮你积累弯道超车的资本。

点击领取2022最新10000T学习资料

史上最全! 全球 22 种开源商业收入模式相关推荐

  1. 汇编语言入门--调试工具debug的使用(史上最全,11种常见命令)

    汇编语言入门–调试工具debug的使用(史上最全,11种常见命令) 1.直接启动debug程序 详见:https://bingshuai.blog.csdn.net/article/details/1 ...

  2. 2个recordset合并_史上最全!8种办法玩转Excel文字合并,总有一款适合你!

    本文作者丨 wayy - Excel 研究院 本文由「秋叶 Excel」原创发布 如需转载,请在公众号发送关键词「转载」查看说明 在日常工作过程中, 我们经常会遇到要把一串文字拼接到一起的情况. 你还 ...

  3. 史上最全的Odoo免费开源ERP客户设置与销售报价应用教程

    本文节选 Odoo亚太金牌服务·开源智造 老杨 所编写的<ERP真的免费不花钱(第三版)--Odoo14应用指南>第二章销售和发票功能应用篇之客户设置与销售报价应用,本书籍持续创作连载中, ...

  4. 史上最全!27种神经网络简明图解:模型那么多,我该怎么选?

    27种?!神经网络竟有那么多种?这篇文章将逐一介绍下面这张图片中的27种神经网络类型,并尝试解释如何使用它们.准备好了吗?让我们开始吧! 神经网络的种类越来越多,可以说是在呈指数级地增长.我们需要一个 ...

  5. 史上最全SpaceX火箭数据开源,核心、组员舱、起落架、发射信息全都有!

    梅宁航 发自 凹非寺  量子位 报道 | 公众号 QbitAI 马斯克用火箭把人送上天,SpaceX粉丝把火箭有关信息贴到GitHub. 3.7k Star,GitHub热榜,SpaceX粉丝组织r/ ...

  6. intel(r)wireless-ac9462异常//笔记本电脑网络无法连接???吐血后总结 :一次解决,史上最全,N种方案

    intel®wireless-ac9462出现黄色感叹号 intel®wireless-ac9560出现黄色感叹号 笔记本联网出现异常 如图所示: 简单介绍:这种情况是无线网卡驱动出现问题 解决方案一 ...

  7. 手把手教你新建一个winform项目(史上最全)

    文章目录 前言: 第1步.打开Microsoft Visual Studio(简称vs),本人这里使用的是Visual Studio 2017 专业版,如下图: 1.2 Visual Studio C ...

  8. 2016年GitHub上史上最全的Android开源项目分类汇总

    以下内容为转载 版主原网址 http://itindex.net/detail/51896-github-android-开源 GitHub上史上最全的Android开源项目分类汇总 今天在看博客的时 ...

  9. GitHub上史上最全的Android开源项目分类汇总 (转)

    GitHub上史上最全的Android开源项目分类汇总 标签: github android 开源 | 发表时间:2014-11-23 23:00 | 作者:u013149325 分享到: 出处:ht ...

最新文章

  1. EOJ Monthly 2020.7 Sponsored by TuSimple 部分题解
  2. python中in_python中的min和in用代码实现
  3. (数据挖掘-入门-1)基于用户的协同过滤之最近邻
  4. ACM PKU 2299 Ultra-QuickSort
  5. java学习文档_资深程序员带你深入了解JAVA知识点,实战篇,PDF文档
  6. 04.卷积神经网络 W1.卷积神经网络
  7. linux一键安装python_Linux下,一键安装python3;适用于Centos、Debian、Ubuntu等
  8. 垃圾分类小程序,云开发 (附源码)
  9. 领域驱动实践总结(基本理论总结与分析+架构分析与代码设计V+具体应用设计分析)
  10. Java-UML类图
  11. 使用Excel批量生成sql,包括日期格式
  12. MOS管和IGBT有什么区别?别傻傻分不清了
  13. 基于PHP+MYSQL药店会员管理系统的设计与实现
  14. 在qt中使用opengl绘制图形动画
  15. apt安装golang
  16. js三层数组循环遍历(笛卡尔积)运算,并生成顺序
  17. 拍案叫绝的算法(二)
  18. 金蝶加密服务器ip地址修改密码,金蝶加密服务器在哪里设置密码
  19. 【汇编】子程序调用实现多精度BCD码(十进制)相加
  20. KEIL 5下载程序到STM32F103ZET6芯片时的相关设置

热门文章

  1. android仿IT之家、炫酷水波纹、Kotlin MVP项目、后台模拟点击、蜂巢迷宫小游戏等源码
  2. 亳州学院计算机查询网址,亳州学院教务管理系统入口http://www.bzuu.edu.cn/jwc/
  3. (1)安装Arch系统 - 树莓派Raspberry Pi - Arch Linux(转载)
  4. 麦库记事如何导出html,麦库记事使用问题解答
  5. java横线_java 字体 加横线
  6. 流量主头像组合微信小程序源码下载支持多种分类并支持姓氏头像制作生成
  7. 王者荣耀赛季更新服务器维护到什么时候,王者荣耀s9维护到几点 王者荣耀s10赛季上线时间一览...
  8. 联客云虚拟工作手机(云手机)应用行业及场景
  9. dsp28335杂记1
  10. c语言side输出空心正方形,请帮忙完成这个c#语言打印正方形的程序