[.Net 6] RabbitMQ入门看这篇就够了
Channels
Virtual Hosts
erlang.download
RabbitMQ安装好后访问http://localhost:15672/ 会看到以下界面
默认账号密码:guest,guest
登录成功后会看到以下界面
接下来我们先创建两个控制台项目RabbitMQGetStarted与Consumer,分别当作生产者与消费者
然后装一下RabbitMQ.Client NuGet包
Work
Routing
根据上方例子我们可以发现所有发送到Direct Exchange的消息被转发到具有指定RouteKey的Queue。在这种模式下消息传递时,RouteKey必须完全匹配,才会被队列接收,否则该消息会被抛弃。
我们之前的代码示例没有定义交换器,默认就是使用了Direct 交换器。
现在我们重新定义一个Direct 交换器的生产者 Producer.DirectExchange
然后跟上面图例一样声明两个队列,使用不同routeKey分别将队列与交换器绑定
Program.cs
QueueDeclare与ExchangeDeclare方法详解同学们可以参考代码注释
我们启动两个消费者"hello1"与"hello2" 然后同时启动生产者
(1)我们先使用路由键orange发布消息
我们可以看到消息将被路由到队列hello1
(2)我们再使用路由键green发布消息
我们可以看到消息将被路由到队列hello2
(3)我们再使用路由键black发布消息
我们可以看到消息也会被路由到队列hello2
这就是direct交换器
https://www.rabbitmq.com/