AsyncAPI 中的关联 ID 是什么?

What is Correlation ID in AsyncAPI?

我正在尝试了解 AsyncAPI 规范中的相关 ID https://www.asyncapi.com/docs/specifications/v2.0.0#correlationIdObject

有一个完整的例子专门用于此,但我仍然不知道这个的目的是什么 属性 https://github.com/asyncapi/spec/blob/3470a6386736cf6002846d8eb7535308b79c75e8/examples/correlation-id.yml

我感兴趣的是:

correlationid 目的是指定您可以在消息中的何处找到相关标识符。有时此信息是 header 的一部分,有时可以在消息有效负载中。所以 correlationid prop 是为了统一这些信息呈现给 API 描述的方式,它是一个你指定标识符所在位置的地方。

为什么需要它?根本。我的主要原因是总是追踪。关联标识符也称为 tracing-id 或 request-id。请以不同的方式称呼它。基本上,这是帮助您通过日志和跟踪工具(如 Jeager 等)跟踪系统中的事件的事件 ID。因此,您可以跟踪系统中事件从点 A 到点 Z 的流程,例如确定它为什么没有到达 Z,它在哪里堆叠。

它在 request/reply pattern 事件驱动架构中也很有用。事件的生产者想要确保它收到的回复事件是消费者对此特定事件的响应。