.Net Core之RabbitMQ
.Net Core下使用RabbitMQ很方便,不过这里还是采用了EasyNetQ这一二次封装的库
-
EasyNetQ对Rabbit原生接口进行了二次封装,提供了IBus作为入口,入门使用的话更加方便,要想使用,只需要在Startup的时候助于一个Singleton的IBus即可:
service.AddSingleton(RabbitHutch.CreateBus(rabbitMqConnection));
-
EasyNetQ还提供了一个自动订阅的方法,可以方便一次性自动订阅-AutoSubscriber:
public static class EasyNetQExtension { private static void InternalInitEasyNetQ(IServiceCollection service, string rabbitMqConnection) { service.AddSingleton(RabbitHutch.CreateBus(rabbitMqConnection)); service.AddSingleton<IAutoSubscriberMessageDispatcher, ConsumerMessageDispatcher>( serviceProvider => new ConsumerMessageDispatcher( serviceProvider, serviceProvider.GetRequiredService<ILogger<Co