开源许可格局近年来发生了显著变化。以下是 PinConsole 的方法与其他方法的比较:
**MongoDB SSPL(服务器端公共许可)。** 在 AWS 将 MongoDB 作为托管服务提供而不做任何回馈后创建。SSPL 比 AGPL 更进一步——如果你将 MongoDB 作为服务提供,它要求你将整个"管理层"(监控、备份、自动化)在 SSPL 下许可。这比 AGPL 更具保护性,但尚未获得 OSI 批准,并与其他开源项目产生兼容性摩擦。PinConsole 坚持使用 OSI 批准的 AGPL-3.0。
**Elastic License (ELv2)。** Elastic 从 Apache 2.0 迁移到一种源可用许可,限制用于"托管服务"和"SaaS 产品"。非 OSI 批准,严格定义上不是开源。我们更喜欢 AGPL——它是真正的开源、OSI 批准,并实现了相同的实际效果。
**BSL(商业源许可)。** MariaDB 的模式——在变更日期(通常 3-4 年)后从限制性许可转换为 GPL 的开源代码。对于希望商业许可有有时间限制的独占窗口的项目很有吸引力。在某些方面比 CLA + 双许可更简单,但增加了许可版本追踪的复杂性。
**MIT + SaaS 服务。** 一些项目对开源代码使用 MIT,并通过托管 SaaS 版本盈利(GitLab、WordPress)。这在项目具有网络效应或转换成本使得竞争对手无法以更低价格提供相同 SaaS 时有效。对于会话回放,转换成本很低——任何云提供商都可以将 MIT 许可的 PinConsole 作为 $5/月的服务提供。AGPL 防止了这种情况。
对于 PinConsole,AGPL-3.0 + 商业许可是正确的平衡:OSI 批准、法律上标准、有效防止 SaaS 商品化,且没有自定义许可的复杂性。