首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MassTransit -为多个主题配置ReceiveEndpoint

MassTransit -为多个主题配置ReceiveEndpoint
EN

Stack Overflow用户
提问于 2022-04-14 02:31:41
回答 1查看 341关注 0票数 0

我正在进行以下实现:

有一个用于管理几个实体的应用程序,如公司、客户等。这些数据需要由另一个应用程序来处理。其基本思想是使用message(RabbitMq)通过MassTransit实现一个Pub/Sub模型。将使用这些消息的应用程序是一个ReceiveEndpoints 6,并且我正在试图找出如何正确配置AspNetCore,因为我刚开始使用消息.

这就是我到目前为止..。

代码语言:javascript
复制
services.AddMassTransit(busCfg =>
{
    busCfg.AddConsumers(typeof(TheAssemblyThatContainsTheMessageSignatures).Assembly);
    
    busCfg.UsingRabbitMq((context, cfg) =>
    {
        // OPTION 1:
        // ONE ReceiveEndpoint (queue) for all messages.
        cfg.ReceiveEndpoint("MyCompany.MyServiceName", e =>
        {
            e.ConfigureConsumer<CompanyCreatedConsumer>(context);
            e.ConfigureConsumer<CompanyUpdatedConsumer>(context);

            e.ConfigureConsumer<ClientCreatedConsumer>(context);
            e.ConfigureConsumer<ClientUpdatedConsumer>(context);
            
            e.ConfigureConsumer<OtherEntityCreatedOrUpdatedConsumer>(context);
        });
        
        // OPTION 2:
        // A ReceiveEndpoint per entity-type.
        cfg.ReceiveEndpoint("MyCompany.MyServiceName.Company", e =>
        {
            e.ConfigureConsumer<CompanyCreatedConsumer>(context);
            e.ConfigureConsumer<CompanyUpdatedConsumer>(context);
        });
        cfg.ReceiveEndpoint("MyCompany.MyServiceName.Client", e =>
        {
            e.ConfigureConsumer<ClientCreatedConsumer>(context);
            e.ConfigureConsumer<ClientUpdatedConsumer>(context);
        });
        cfg.ReceiveEndpoint("MyCompany.MyServiceName.OtherEntityCreatedOrUpdated", e =>
        {
            e.ConfigureConsumer<OtherEntityCreatedOrUpdatedConsumer>(context);
        });
        
        // OPTION 3????
    });
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-14 12:38:10

遵循文档,只需使用ConfigureEndpoints。你试图想出一个解决办法,只会分散你的注意力。

MassTransit已经知道如何根据使用者名称配置接收端点,所以只需使用它即可。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71865833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档