MQ:Message Queue,消息队列 安装RabbitMQ
先安装Erlang环境 配置ERLOANG_HOME 安装目录,path 安装目录/bin安装管理插件启动成功有er进程访问端口15672使用场景工作原理实战练习创建maven工厂导包-》-》创建消息生成者,消息接收者-》导入工具类消息发送者1通过工具创建连接2通过连接创建通道3创建队列4通过通道使用默认的交换机,把消息发送到队列中消息接收者1创建连接2创建通道3创建队列(发送者和接收者的队列一样)4创建消息消费回调5 签收消息什么时候会消息丢失:注意自动签收会消息丢失使用手动签收 自动签收改成false通道.basicAck("消息id”);Workqueues模式拷贝hello发送者和接收者,修改队列名字复制一个接收者可以使用workqueues模式下订单问题其中有一个消费者工作太慢 会工作堆积解决:能者 多劳:通道.basicQos()让消费者同时处理一条消息发送者只给完成消费的,没有完成的不会给他发送消息过去订阅模型3种匹配方式广播生成者:创建交换机,不创建队列,发送消息要指定交换机,不指定队列名消费者:创建队列,绑定道交换机,不需要指定队列名定向生成者 修改交换机类型,创建交换机,不创建队列,发送给指定队列名接收者:创建队列,绑定道交换机,需要指定队列名谁匹配上就发给谁,有几个匹配上就发给几个接收者通配符生产者:交换机改为topic,发消息的队列名不用通配符接收者:队列名可以使用通配符header模式-RPC持久化 交换机持久化----队列持久化–消息持久化面试题什么情况消息会丢失:12解决方法: