大众运输中的消费者传奇与自动驾驶

问题描述

究竟什么是消费者传奇,它与 Automatonymous 有何不同?我知道 Automatonymous 是 Masstransit 使用的一个单独的库。

解决方法

由于缺乏更好的名称,消费者传奇是 MassTransit 在 13 年前创建时实施的原始传奇。他们是有状态的消费者,并使用 IConsumer<T> 的变体将消息定向到 saga 实例。 Consumer sagas 实现一个或多个接口来使用相关的 saga 事件。包含此支持以便将应用程序从其他 saga 实现轻松迁移到 MassTransit。

State Machine Sagas 使用 Automatonymous,提供强大的状态机语法来创建传奇。它们在事件关联方面更加灵活,并且具有用于定义状态和行为的流畅语法。它们还可以通过创建在运行时为每条消息解析的自定义活动来很好地与依赖项注入配合使用。

Automatonymous 是单独编写的,以便在 MassTransit 之外使用它,但它是由同一作者(我)编写的。