ToB企服应用市场:ToB评测及商务社交产业平台

标题: Springboot中使用RabbitMq [打印本页]

作者: 渣渣兔    时间: 2023-10-31 09:17
标题: Springboot中使用RabbitMq
代码地址: https://gitee.com/Aes_yt/middleware-demo/tree/master/rabbitmq
安装RabbitMq

1. docker拉取镜像
  1. docker pull rabbitmq:3.9.29-management
复制代码
2. 创建rabbitmq容器
  1. docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3.9.29-management
复制代码
3. 访问地址

http://{ip地址}:15672/,可以看到RabbitMq的管理后台界面。账号密码默认 guest
消息生产和消费

rabbitmq-producer

rabbitmq-consumer

交换器类型

交换器类型有四种,fanout,topic,direct,headers。
接下来在代码中创建三种交换器类型,对应的routingKey和queue绑定如表格所示。发送对应消息,看看是否能接收到 [Y/N]。headers类型不演示。
ExchangeExchangeTypeRoutingKeyMessageKeyQueueReceivefanout_exchangefanoutfanout.test.key1
fanout.#xxx.yyy.zzzfanout_test_queue1
fanout_test_queue2Y
Ytopic_exchangetopictopic.test.#
topic.#
topic.*topic.test.key1
topic_test_queue1
topic_test_queue2
topic_test_queue3Y
Y
Ndirect_exchangedirectdirect.test.key1
direct.test.#
direct.test.key3direct.test.key1
direct.test.key2
direct.test.key3direct_test_queue1
direct_test_queue2
direct_test_queue3 && direct_test_queue4Y
N
Y && Ydirect 的Routingkey是全匹配,通配符不起作用,所以direct_test_queue2没有接收到消息。
topic 的通配符,*正好匹配一个词,#可以匹配一个或多个词,所以topic_test_queue3没有接收到消息。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4