ActiveMQ

作者: 李彬燊666 | 来源:发表于2019-08-25 23:16 被阅读0次

    几个重要的网站: 

    1: https://blog.csdn.net/feicongcong/article/details/77203700     

    2:https://blog.csdn.net/qq_20597727/article/details/81416812

    3:https://blog.csdn.net/qinweili751/article/details/80620104

                                                            

                                     发送消息与接收消息

    一:发送消息  生产者 producer

    1:创建连接工厂-----------------》new ActiveMQConnectionFactory("tcp://192.168.126.128:61616");

    2:创建连接-------》connectionFactory.createConnection();

    3:打开连接------》 connection.start();
    4:创建会话------》connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

    5:创建队列----》session.createQueue("Atguigu");【名字任意起】

    6:创建生产者----》session.createProducer(queue);
    7:创建消息对象----》new ActiveMQTextMessage();

                 //activeMQTextMessage.setText("hello ActiveMq!");//纯文本数据

                    //new ActiveMQMapMessage();//map集合

    8:发送消息---》  producer.send(activeMQTextMessage);

    9:关闭连接---》 producer.close();        connection.close();

    ----------------------------------二:消息接收方

    1:创建连接工厂:---》new ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_USER,ActiveMQConnection.DEFAULT_PASSWORD,"tcp://192.168.126.128:61616");

    2:创建连接-------》connectionFactory.createConnection();

    3:打开连接------》 connection.start();

    4:创建会话------》connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

    5:创建队列----》session.createQueue("Atguigu");【名字任意起】注意:消费者的队列名字必须与生产者一致

    6:创建消费者--》 session.createConsumer(nb);

    consumer.setMessageListener:在消费者中设置监听器

    consumer.setMessageListener(new MessageListener() {

    @Override

        public void onMessage(Message message) {

    if(messageinstanceof MapMessage){

    try {

    String sanfu = ((MapMessage) message).getString("sanfu");

    String lushun = ((MapMessage) message).getString("lushun");

    System.out.println(sanfu +"  " + lushun);

    }catch (JMSException e) {

    e.printStackTrace();

    }

    一定注意:消息的接收方一定不能关闭任何连接

    --------------------------------------------------------------

    要知道queque中的各项都是什么意思

    1:Number Of Pending Messages等待消费的消息 这个是当前未出队列的数量。可以理解为总接收数-总出队列数

    2:Number Of Consumers消费者 这个是消费者端的消费者数量

    3:Messages Enqueued进入队列的消息  进入队列的总数量,包括出队列的。 这个数量只增不减

    4:Messages Dequeued出了队列的消息  可以理解为是消费者消费掉的数量

    总结:

    当有一个消息进入这个队列时,等待消费的消息是1,进入队列的消息是1。当消息消费后,等待消费的消息是0,进入队列的消息是1,出队列的消息是1.在来一条消息时,等待消费的消息是1,进入队列的消息就是2.

    相关文章

      网友评论

          本文标题:ActiveMQ

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