美文网首页
RabbitMQ开发向导

RabbitMQ开发向导

作者: 泽林呗 | 来源:发表于2018-10-24 13:48 被阅读0次
连接RabbitMQ
        ConnectionFactory factory = new ConnectionFactory();
        factory.setHost(IP_ADDRESS);
        factory.setPort(PORT);
        factory.setUsername("root");
        factory.setPassword("root123");

        Connection connection = factory.newConnection();
        Channel channel = connection.createChannel();

也可使用URI方式来实现

factory.setUri("amqp://userName:password@ipAddress:portNumber/virtualHost");
使用交换器和队列
channel.exchangeDeclare(exchangeName, "direct", true);
String queueName = channel.queueDeclare().getQueue();
channel.queueBind(queueName, exchangeName, routingKey);
发送消息
byte[] messageBodyBytes = "Hello ,World!".getBytes();
channel.basicPublish(exchangeName, routingKey, null, messageBodyBytes);
消费消息
  1. 推模式
    不同的订阅采用不同的消费者标签(consumerTag)来区分彼此,在同一个Channel中消费者也需要通过唯一的消费者标签以作区分。
boolean autoAck = false;
channel.basicQos(64);
channel.basicConsume(queueName, autoAck, "myConsumerTag", 
      Consumer consumer = new DefaultConsumer(channel) {
            @Override
            public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException {
                System.out.println("recv message: " + new String(body));
                try {
                    TimeUnit.SECONDS.sleep(1);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                channel.basicAck(envelope.getDeliveryTag(), false);
            }
        };
  1. 拉模式
GetResponse response = channel.basicGet(QUEUE_NAME, false);
channel.basicAck(response.getEnvelope().getDeliveryTag(), false);
消费端的确认和拒绝

相关文章

  • RabbitMQ开发向导

    连接RabbitMQ 也可使用URI方式来实现 使用交换器和队列 发送消息 消费消息 推模式不同的订阅采用不同的消...

  • RabbitMQ安装

    环境: ubuntu 16.04 官网的安装向导请点击这里 rabbitmq依赖erlang 首先检查你的erl...

  • RabbitMQ 快速搭建开发环境 --- 2022-04-03

    RabbitMQ快速搭建开发环境,因为RabbitMQ使用Erlang开发,常规方式安装需要先安装Erlang,再...

  • 消息队列 RabbitMQ核心

    RabbitMQ RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高...

  • 如何安装RabbitMQ

    安装RabbitMQ安装RabbitMQ RabbitMQ是流行的开源消息队列系统,用erlang语言开发,故首先...

  • centos7安装rabbitMQ3.7.8

    1. RabbitMQ简介: RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是...

  • 安装Erlang环境

    安装RabbitMQ必须要先安装Erlang开发语言环境,因为RabbitMQ是由Erlang语言开发的。 安装依...

  • Spring Boot RabbitMQ 入门(一)

    1.RabbitMQ简介 RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是A...

  • RabbitMQ

    RabbitMQ 简介: RabbitMQ 是一个由erlang开发的AMQP(Advanved Message ...

  • RabbitMQ快速熟悉

    RabbitMQ Tutorials 一、简介 RabbitMQ是由erlang语言开发,基于AMQP(Advan...

网友评论

      本文标题:RabbitMQ开发向导

      本文链接:https://www.haomeiwen.com/subject/krjnzftx.html