前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MQ 系列之 ActiveMQ 介绍

MQ 系列之 ActiveMQ 介绍

作者头像
Demo_Null
发布2020-09-28 12:02:30
1.3K0
发布2020-09-28 12:02:30
举报
文章被收录于专栏:Java 学习Java 学习

1.1 简介

1.1.1 ActiveMQ 概述

  Apache ActiveMQ 是 Apache 软件基金会所研发的开放源代码消息中间件;由于 ActiveMQ 是一个纯 Java 程序,因此只需要操作系统支持 Java 虚拟机,ActiveMQ 便可执行。ActiveMQ 是一个完全支持 JMS1.1 和 J2EE 1.4 规范的 JMS Provider 实现。

在这里插入图片描述
在这里插入图片描述

1.1.2 JMS 概述

  JMS(Java Messaging Service) 是 Java 平台上有关面向消息中间件的技术规范,它便于消息系统中的 Java 应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发。JMS 本身只定义了一系列的接口规范,是一种与厂商无关的 API,用来访问消息收发系统。它类似于 JDBC(java Database Connectivity):这里,JDBC 是可以用来访问许多不同关系数据库的 API,而 JMS 则提供同样与厂商无关的访问方法,以访问消息收发服务。许多厂商目前都支持 JMS,包括 IBM 的 MQSeries、BEA 的 Weblogic JMS service 和 Progress 的 SonicMQ。   JMS 能够通过消息收发服务(有时称为消息中介程序或路由器)从一个 JMS 客户机向另一个 JMS 客户机发送消息。消息是 JMS 中的一种类型对象,由两部分组成:报头和消息主体。报头由路由信息以及有关该消息的元数据组成。消息主体则携带着应用程序的数据或有效负载。JMS 定义了五种不同的消息正文格式,以及调用的消息类型,允许你发送并接收以一些不同形式的数据,提供现有消息格式的一些级别的兼容性。  ♞ TextMessage:个字符串对象  ♞ MapMessage:套名称 - 值对  ♞ ObjectMessage:个序列化的 Java 对象  ♞ BytesMessage:个字节的数据流  ♞ StreamMessage:Java 原始值的数据流

1.1.3 JMS 消息传递类型

  JMS 有两种消息通信模型,点对点模型(point to point)(p2p)和发布/订阅模型(pub/sub),ActiveMq 实现了 JMS 接口,同样,ActiveMq 也实现了这两种模型。 点对点模型规定了一个消息只能被一个接收者接收,而发布/订阅模型允许一个消息可以被多个消息接收者接收。

☞ 点对点

  当一个消息生产者产生一个消息时,会把消息放入一个队列(Queue)中,然后消息消费者从 Queue 中读取消息,如果同时有多个消费者读取消息,ActiveMq 保证消息只会被一个消费者读取到,消费者读取到消息之后需要向 ActiveMq 发送一条确认信息,确认消息已经被接收,此时,队列(Queue)中的消息出队,整个流程就处理完了。

在这里插入图片描述
在这里插入图片描述

☞ 发布/订阅

  发布/订阅模式允许一条消息可以被多个订阅了该 Topic 的消息消费者接收,当一个消息生产者产生一个消息时,会把消息放入一个 Topic 中,然后监听在此 Topic 上的消息消费者都能接收到消息。

在这里插入图片描述
在这里插入图片描述

1.2 安装 ActiveMQ

1.2.1 Windows 平台

☞ 下载

 首先去 ☛ ActiveMQ 官网 下载 Windows 版本的压缩包

在这里插入图片描述
在这里插入图片描述

☞ 安装

 将下载好的压缩包放到合适的路径下,解压。你就得到了一个安装好的 ActiveMQ。

在这里插入图片描述
在这里插入图片描述

☞ 启动

 进入 bin 目录,打开 cmd 执行 ./activemq start 命令,

在这里插入图片描述
在这里插入图片描述

1.2.2 Linux 平台

☞ 下载

 首先去 ☛ ActiveMQ 官网 下载 Unix/Linux/Cygwin 版本的压缩包,将其上传至服务器。

在这里插入图片描述
在这里插入图片描述

☞ 解压、赋权

 使用 tar zxvf apache-activemq.tar.gz 将 ActiveMQ 解压,然后使用 chmod 777 apache-activemq 给解压好的文件赋权。

在这里插入图片描述
在这里插入图片描述

☞ 启动

 进入 apache-activemq\bin 目录,执行 ./activemq start 启动 MQ,注意要先安装好 JDK 才能正常启动。

1.2.3 ActiveMQ 管理界面

  在浏览器输入服务器 IP + 8161 端口进入 ActiveMQ 登录界面,输入默认账号:admin,默认密码:admin 点击 Manage ActiveMQ broker 进入主管理界面。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  点击对应的选项卡进入点对点消息列表(Queues)和发布/订阅消息列表(Topics),列表各列信息含义如下:   ♞ Name:名称   ♞ Number Of Pending Messages:等待消费的消息 这个是当前未出队列的数量。   ♞ Number Of Consumers:消费者 这个是消费者端的消费者数量   ♞ Messages Enqueued:进入队列的消息 进入队列的总数量,包括出队列的。   ♞ Messages Dequeued:出了队列的消息 可以理解为是消费这消费掉的数量

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-08-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.1 简介
    • 1.1.1 ActiveMQ 概述
      • 1.1.2 JMS 概述
        • 1.1.3 JMS 消息传递类型
        • 1.2 安装 ActiveMQ
          • 1.2.1 Windows 平台
            • 1.2.2 Linux 平台
              • 1.2.3 ActiveMQ 管理界面
              相关产品与服务
              消息队列 TDMQ
              消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档