rabbitmq笔记

安装请点 安装参考

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

rabbitmqctl set_permissions -p v_host user “.” “.” “.*”

rabbitmqctl list_vhosts

rabbitmqctl list_queues

这里写图片描述

注意:执行完命令后没有 …….down 也是正确的,别问我咋知道,反正一切正常,我也不知道为什么

备忘:我自己设置的用户名是root,密码是root

管理工具内容介绍

rabbitmq与java程序交互的端口是 5672

这里写图片描述

各种队列模式

依赖包

<dependency>
            <groupId>com.rabbitmq</groupId>
            <artifactId>amqp-client</artifactId>
            <version>3.4.1</version>
        </dependency>
<dependency>
            <groupId>com.rabbitmq</groupId>
            <artifactId>amqp-client</artifactId>
            <version>3.4.1</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.7</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.3.2</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.amqp</groupId>
            <artifactId>spring-rabbit</artifactId>
            <version>1.4.0.RELEASE</version>
        </dependency>

1 简单队列

这里写图片描述

2 work模式

a 平均分配
b 能者多劳:应用场景,如果向数据库写数据压力过大,要搞集群,好多台机子做的都是相同的事情,但又不能重复写入数据,就可以用work模式的能者多劳

// 同一时刻服务器只会发一条消息给消费者,平均分配和能者多劳代码区别
    channel.basicQos(1); 

这里写图片描述

确认模式机制

这里写图片描述

// 监听队列,手动返回完成中间的值是false,自动确认中间的值是true
        channel.basicConsume(QUEUE_NAME, false, consumer);
// 返回确认状态
            channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false);

这里写图片描述

3 订阅模式

商品数据同步
一个生产者生产的数据同时被多个消费者获得

这里写图片描述

这里写图片描述

这里写图片描述

  注意:如果将消息发送到一个没有队列绑定的交换机,消息将丢失
  因为交换机没有存储消息的能力,消息只能存到队列

4 路由模式

这里写图片描述

这里写图片描述

这里写图片描述

5 通配符模式

这里写图片描述

这里写图片描述

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值