【问题标题】:MassTransit Multi Bus or One BusMassTransit 多总线或单总线
【发布时间】:2021-08-12 09:04:46
【问题描述】:

我阅读了this 文章,了解如何在 MassTransit 中配置其他总线实例。

我的场景:我有两个个人 NuGet 包(例如 NotificationAudit Log 包),每个包分别有消息合同和消费者,然后MassTransit 和他们的每个人都注册了自己的总线。

这些包已经用在MyApi Application,它也拥有Message Contracts 和Consumers。和 MassTransit 与另一辆公共汽车注册到 MyApi 应用程序。

现在我不确定是使用多总线还是单总线。如果我为所有这些人使用一辆公共汽车,那么我想我必须将包裹的组装传递给 MassTransit 注册以注册他们的消费者。对吗?

services.AddMassTransit(x =>
{
    x.AddConsumer<NotificationConsumers>();
    x.AddConsumer<AuditLogConsumers>();
    x.AddConsumer<MyApiAppConsumers>();
    // etc ...
});

【问题讨论】:

    标签: asp.net-core rabbitmq masstransit


    【解决方案1】:

    MultiBus 的主要用例是一个应用程序连接到两个不同的代理实例,甚至使用不同的传输。对于所有其他情况,您实际上并不需要 MultiBus。

    在您引用的文章开头就提到了:

    但是,随着基于云的平台的广泛使用,消息传输的种类也越来越多,更不用说将 HTTP 作为传输协议了。随着应用程序复杂性的增加,连接到多个消息传输和/或代理变得越来越普遍。因此,MassTransit 无需强制开发人员创建自己的解决方案,而是能够在特定的依赖注入容器中配置额外的总线实例。

    【讨论】:

    • 还有一个问题;将包裹的组装传递给 MassTransit 注册(进入我的应用程序)以注册他们的消费者是否正确?
    • 当然,您可以通过程序集来注册这些消费者。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多