契约,而不是内核¶
English | 中文
AxisVela 不是带插件的单一运行时,而是一组通过版本化契约组合的独立产品。
这个选择有代价,也有回报。
思想¶
共享内核让单一产品内部集成容易,却让其他地方昂贵:每个消费者都继承内核的发布节奏、 失败模式与治理模型。契约边界保持集成面小,让两侧独立演进。
实践中,契约可以是:
- 版本化 API 或 OpenAPI 文档;
- JSON Schema 或协议规范;
- 带兼容策略的 SDK;
- 一致性夹具;
- 签名产物格式。
契约是产品边界。背后的实现可以变化。
收益¶
- 独立版本化。 产品发布不必强迫所有消费者升级。
- 可替换。 契约成立时,实现可以替换。
- 组织匹配。 不同团队可以拥有不同产品,而不共享发布列车。
- 许可证清晰。 开放接口层可以 Apache-2.0,而运行时单独许可。
代价¶
- 集成纪律。 契约必须版本化、文档化、测试。
- 一致性工作。 “兼容”需要夹具,不是新闻稿。
- 更多仓库。 系统不是单体时,地图更重要。
AxisVela 接受这些代价,因为替代方案——一个拥有所有领域的内核——会让治理与许可证边界 无法保持清晰。
在哪里看到¶
- Harmovela 是带 schema 与跨语言一致性夹具的协议。
*-open仓库发布版本化契约与 SDK。- Enterprise Autonomy 展示产品跨边界组合的端到端示例。
一个有用的问题¶
评估产品时问:契约是什么?背后的实现变化时会发生什么? 如果答案是“同一个仓库”, 它是模块,不是契约。