在过去的几天里,我一直在寻找某种方法来记录我正在研究的微服务架构的 API。首先,我将简要介绍一下该项目:
- 用 C#、.NET 4.6.1 编写
- 使用带有 x-pub/x-sub 代理的 NetMQ 作为“消息代理”
- 所有通信都是序列化为 JSON 的纯 C# 对象
- 有些客户端是浏览器中的 JavaScript,有些是 .NET 应用程序
简而言之,我想知道其他人如何记录发布到他们的消息总线的模型。我见过很多帮助记录 REST 调用的项目(如 Swagger),但我们没有使用 REST。我们的应用程序几乎完全基于事件,使用 JSON 进行发布-订阅消息传递。
我的第一个想法是使用 JSON-Schema 记录 JSON,并使用工具将其转换为格式良好的 API 文档。这可能没问题,但令我困扰的是,似乎没有任何工具可以将模式生成自动化作为构建过程的一部分。如果我们的模型与 API 文档不同,我希望它是一个构建错误。更好的是,如果有某种方法可以在构建过程中自动生成基本文档,那么文档可以保持同步。
你们是怎么做到的?缺少特定于支持 REST 的消息总线架构的文档工具,这让我质疑我们使用基于消息队列的消息传递架构的决定。:)