摘要: rabbitmq 架构图 RabbitMQ 中的 broker 是指什么?cluster 又是指什么 broker 是指一个或多个 erlang node 的逻辑分组,且 node 上运行着 RabbitMQ 应用程序。cluster 是在 broker 的基础之上,增加了 node 之间共享元数据 阅读全文
posted @ 2020-04-21 22:12 Casar 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 什么是生成端的可靠性投递: 1. 保障消息的成功发出 2. 保障MQ节点的成功接收 3. 发送端收到MQ节点(Broker)确认应答 4. 完善的消息进行补偿机制 业界主流解决方案: 1. 消息落库, 对消息状态进行打标志, 比如状态改为1表示成功收到, 轮询抓取状态为0的消息重新发送,到最大努力次 阅读全文
posted @ 2020-04-19 21:39 Casar 阅读(374) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-04-19 13:20 Casar 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 答案是先下单再减库存 以 MySQL 作为 DB 为例,下订单就是 insert,在使用索引的情况下,insert 插入是行级锁,支持每秒 4W 的并发。减库存就是 update 操作,命中索引时也是行级锁,但是这是个独占锁,所有的操作都要等待前一个释放锁后才能继续 update。 问题就在这里,根 阅读全文
posted @ 2020-04-18 23:33 Casar 阅读(1179) 评论(0) 推荐(0) 编辑
摘要: //创建MQ连接工厂对象 ConnectionFactory connectionFactory = new ConnectionFactory(); //设置连接RabbitMQ主机 connectionFactory.setHost("192.168.153.138"); //设置端口号 con 阅读全文
posted @ 2020-04-18 20:02 Casar 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-04-18 16:55 Casar 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 生产者对应一个虚拟主机,相当于MySQL的库的概念。对应于一个应用、项目或业务, 可以对每一个对应建立一个虚拟主机 使用MQ步骤 1. 构建一个虚拟主机 2. 虚拟主机绑定用户 3. 生产者发送消息时, 连接到Server里面的对应的主机,通过用户名密码将消息发送给对应的交换机或消息队列 4. 消费 阅读全文
posted @ 2020-04-18 16:51 Casar 阅读(538) 评论(0) 推荐(0) 编辑
摘要: Overview : 详细信息 Connections : 连接情况 Channels : 通道 Exchanges : 交换机 Name : 交换机的名字 amq.direct : 字典 amq.fanout : 广播 amq.headers : 以头的形式 amq.match : 匹配 amq. 阅读全文
posted @ 2020-04-18 16:36 Casar 阅读(143) 评论(0) 推荐(0) 编辑
摘要: #1 服务启动相关 systemctl start | stop | restart | status rabbitmq-server # 2 管理命令行 rabbitmqctl help 可以查看更多命令 # 3 插件管理命令行 rabbitmq-plugins enable | list | d 阅读全文
posted @ 2020-04-18 12:19 Casar 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 使用Docker安装 1. 安装带WEB管理界面的RabbitMQ docker pull rabbitmq:management 2. 启动 docker run --name rabbitmq -d -p 15672:15672 -p 5672:5672 rabbitmq:management 阅读全文
posted @ 2020-04-18 12:12 Casar 阅读(85) 评论(0) 推荐(0) 编辑