记录事件驱动架构

Vic*_*tor 8 architecture documentation event-driven-design cloudevents

我正在设计一个事件驱动系统,该系统将由至少两个由两个不同外包公司组成的团队构建。

我们已经在内部设计了所有内容,但是现在我正在为开发团队创建文档。

对于HTTP,我使用的是OpenAPI

是否有任何工具或语言来描述事件和处理流?

创建此类文档有哪些好的做法?

Ale*_*ksi 6

这是一种方法:

  1. 定义系统接受的事件的明确列表。例如,事件可以基于CloudEvents 规范,并记录在 JSONSchema 中(根据此答案)。
  2. 对于每个系统组件,定义组件生成和使用哪些事件(在上述列表之外)。
  3. 对于特别多毛的单个事件流,将它们写在序列图中。

AsyncAPI规范是另一个有趣的(更包罗万象的)的方式。它有点像 Swagger/OpenAPI,但适用于事件驱动系统:您定义消息通道和订阅/发布操作,而不是路径和 HTTP 操作。

回答有点晚,我很想知道您最终是如何解决问题的!