ActiveMQ搭建以及实例

前言

首先先了解一下什么是AcitveMQ
ActiveMQ 是Apache出品消息中间件,来帮助实现高可用、高性能、可伸缩、易用和安全的企业级面向消息服务的系统。
ActiveMq的特点,多协议:TCP、SSL、NIO、UDP等、可插拔的体系结构,可以灵活定制、保证高性能的集群、支持消息持久化等。

ActiveMQ安装和启动

安装

  1. 仅需三步,下载linux的压缩包 ,传送门:ActiveMQ下载
  2. 解压,下图是解压之后的目录
    在这里插入图片描述
  3. 启动,进入bin目录,输入命令 ./activemq start
[root@localhost apache-activemq-5.15.11]# ./activemq start

在这里插入图片描述
访问IP:8161/admin 初始账号密码都是admin ,出现下图则访问成功
在这里插入图片描述

实例

消息发送者:

    public static void main(String[] args) throws JMSException, InterruptedException {
        ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.50.140:61616");
        Connection connection = connectionFactory.createConnection();
        connection.start();
        Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
        Destination destination = session.createQueue("my_queue");
        MessageProducer producer = session.createProducer(destination);

        for (int i = 0; i < 3; i++) {
            TextMessage message = session.createTextMessage("message" + i);
            producer.send(message);
        }
        session.commit();
        session.close();
        connection.close();

    }

消息接收者

    public static void main(String[] args) throws JMSException {
        ConnectionFactory cf = new ActiveMQConnectionFactory("tcp://192.168.50.140:61616");
        Connection connection = cf.createConnection();
        connection.start();
        final Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
        Destination destination = session.createQueue("my_queue");
        MessageConsumer consumer = session.createConsumer(destination);
        int i = 0;
        while (i < 3) {
            TextMessage message = (TextMessage) consumer.receive();
            session.commit();
            System.out.println("收到的消息:" + message.getText());
            i++;
        }
        session.close();
        connection.close();
    }

结果
在这里插入图片描述
在这里插入图片描述
这里可以看到我们有3个消息,出队列的消息有3个

注:这里有个地方要注意,每当我写好新的发送者和接收者,要下运行一些接收者,让ActiveMQ只要你订阅的是哪个队列
至此,对ActiveMQ的入门也就是算是完结了,希望本文对你有帮助!

发布了141 篇原创文章 · 获赞 206 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/ywq1016243402/article/details/103741795