MassTransit 集成 Aspnet 样板
MassTransit integration Aspnetboilerplate
我想将 MassTransit 与 Aspnetboilerplate 项目集成,以使用 RabbitMQ 作为分布式事件总线。然后可能会考虑集成 Azure 服务总线。
我正在为如何创建一个简单的 Eventbus 并实现注册和订阅而苦苦挣扎。不幸的是,我找不到任何好的例子。
我可以毫无问题地使用 Aspnetboilerplate EventBus。下面是我希望实现的示例:
// subscribe to an event
var ev = EventBus.Register<T>(eventInfo =>
{
// do something with evInfo.Data
}
ev.Dispose();
// publish and event
private readonly IEventBus _eventBus;
_eventBus.TriggerAsync(new T());
由于 LGPL 的许可限制,我不想使用 Abp 框架。我工作的公司不会在任何内部产品中接受此类许可
任何建议或任何实现类似内容的文章都会很棒。
更新 1
正如克里斯指出的那样,有很多很棒的视频和文档,很高兴看到一个很棒的图书馆。
虽然我似乎找不到任何关于如何实现通用消费者/请求客户端的文档。
// Example of a consumer
public class ManagerResultConsumer<T>: BaseConsumer<ManagerResult<T>>
{
public override Task Consume(ConsumeContext<ManagerResult<T>> context)
{
return base.Consume(context);
}
}
// configure the service / consumers and clients
services.AddMediator(configurator =>
{
configurator.AddConsumer<SubmitOrderConsumer>();
configurator.AddConsumer<ManagerResultConsumer<T>>();
configurator.AddRequestClient<SubmitOrder>();
configurator.AddRequestClient<ManagerResult<T>>();
});
我试图确保我在启动时没有注册很多具体的实现,类似于 SubmitOrder 和 SubmitOrderConsumer。
谢谢
我建议浏览 MassTransit's documentation, watching the myriad of YouTube videos, and checking out the samples 展示如何使用 MassTransit 构建应用程序。
我想将 MassTransit 与 Aspnetboilerplate 项目集成,以使用 RabbitMQ 作为分布式事件总线。然后可能会考虑集成 Azure 服务总线。
我正在为如何创建一个简单的 Eventbus 并实现注册和订阅而苦苦挣扎。不幸的是,我找不到任何好的例子。
我可以毫无问题地使用 Aspnetboilerplate EventBus。下面是我希望实现的示例:
// subscribe to an event
var ev = EventBus.Register<T>(eventInfo =>
{
// do something with evInfo.Data
}
ev.Dispose();
// publish and event
private readonly IEventBus _eventBus;
_eventBus.TriggerAsync(new T());
由于 LGPL 的许可限制,我不想使用 Abp 框架。我工作的公司不会在任何内部产品中接受此类许可
任何建议或任何实现类似内容的文章都会很棒。
更新 1 正如克里斯指出的那样,有很多很棒的视频和文档,很高兴看到一个很棒的图书馆。
虽然我似乎找不到任何关于如何实现通用消费者/请求客户端的文档。
// Example of a consumer
public class ManagerResultConsumer<T>: BaseConsumer<ManagerResult<T>>
{
public override Task Consume(ConsumeContext<ManagerResult<T>> context)
{
return base.Consume(context);
}
}
// configure the service / consumers and clients
services.AddMediator(configurator =>
{
configurator.AddConsumer<SubmitOrderConsumer>();
configurator.AddConsumer<ManagerResultConsumer<T>>();
configurator.AddRequestClient<SubmitOrder>();
configurator.AddRequestClient<ManagerResult<T>>();
});
我试图确保我在启动时没有注册很多具体的实现,类似于 SubmitOrder 和 SubmitOrderConsumer。
谢谢
我建议浏览 MassTransit's documentation, watching the myriad of YouTube videos, and checking out the samples 展示如何使用 MassTransit 构建应用程序。