ActiveMQ是Apache的一个开源项目,它是一个功能强劲的开源消息总线,也是一个中间件产品,它是JMS的一个实现。
   在介绍ActiveMQ之前,先来复习一下J2EE中的JMS规范。JMS 即Java消息服务应用程序接口,是Java Message Service的缩写,是一个Java平台中关于面向消息中间件(manager of managers,缩写为MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信;我们可以利用它在不同系统和不同的模块之间实现集成。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。JMS有两个好处,第一个就是让模块之间或者系统之间的耦合度降低,第二个是异步通信。ActiveMQ是一个JMS消息代理的实现。
   JMS的消息机制有两种模式,一种是点对点(Point to Point,一对一)消息模式,表现为队列的形式;发送的消息,只能被一个接收者接收。另一种是发布/订阅消息模式(一对多),可以被多个订阅者订阅,类似于群发。 

软件环境

  • ActiveMQ 5.15.13
  • java version 13.0.1
  • IntelliJ IDEA 2019.3.2 (Ultimate Edition)

1、到官网下载安装包

http://activemq.apache.org/download.html

   官网里有Windows和Linux版本,请根据需要下载对应的版本。

注意:5系列的版本最好使用JDK8及以上, 低于JDK8可以使用4.x。

2、下载和启动

   下载之后,解压apache-activema-5.15.13-bin.zip包,进入bin目录:

请确保系统已经安装Java 8或者以上版本。在bin目录发现有 win 32 和 win 64 两个文件夹,这2个文件夹分别对应 windows 32 位和 windows 64 位操作系统的启动脚本。

   选择系统对应的版本,例如电脑是64位的,则进入win64文件夹,找到启动脚步activemq.bat,双击即可启动。

启动成功后,Shell窗口视图如下:

 

截图中容易找到日志信息 Connector ws Started

3、启动成功访问

启动完毕后,在浏览器地址栏输入http://localhost:8161/admin ,打开ActiveMQ的管理界面。默认用户名密码为admin、admin,这个用户名密码是在conf/users.properties中配置的。输入用户名密码后即可访问到如下管理界面,

   ActiveMQ中,61616为消息代理的端口,采用TCP协议发送;8161为管理界面的端口,采用内嵌jetty服务器。

下面在页面 http://localhost:8161/admin/queues.jsp看一下队列消息消费情况:

其中

  1. Name列的 myDest.queue 就是队列的名字;是自定义的。
  2. Number Of Pending Messages 表示收到的消息数量;
  3. Number Of Consumers 表示目前实时等待的消费者请求数量;
  4. Messages Enqueued 表示被存储的数量-Queue类型数据没有消费者消费将先被 ActiveMQ 存储起来;
  5. Messages Dequeued 表示被消耗的消息数。 

Reference

 
  1. https://www.cnblogs.com/DFX339/p/9050878.html
  2. https://yq.aliyun.com/articles/647403?spm=a2c4e.11153940.0.0.3ba613c2O0IpNw

ActiveMQ的安装与部署的更多相关文章

  1. AMQ学习笔记 - 14. 实践方案:基于ZooKeeper + ActiveMQ + replicatedLevelDB的主从部署

    概述 基于ZooKeeper + ActiveMQ + replicatedLevelDB,在Windows平台的主从部署方案. 主从部署可以提供数据备份.容错[1]的功能,但是不能提供负载均衡的功能 ...

  2. ActiveMQ 的安装与使用

    消息中间件简介 消息中间件(MOM:Message Orient middleware) 消息中间件有很多的用途和优点: 1. 将数据从一个应用程序传送到另一个应用程序,或者从软件的一个模块传送到另外 ...

  3. 一、消息队列之ActiveMQ的安装、配置和C#样例代码

    最近有时间了,研究一下消息队列ActvieMQ,结合自己的实践和网上的一些大家内容,整理如下,所有步骤和链接均是正确的. 1.ActiveMQ ActiveMQ 是Apache出品,最流行的,能力强劲 ...

  4. ActiveMQ伪集群部署

    本文借鉴http://www.cnblogs.com/guozhen/p/5984915.html,在此基础上进行了完善,使之成为一个完整版的伪分布式部署说明,在此记录一下! 一.本文目的 介绍如何在 ...

  5. 淘淘商城项目_同步索引库问题分析 + ActiveMQ介绍/安装/使用 + ActiveMQ整合spring + 使用ActiveMQ实现添加商品后同步索引库_匠心笔记

    文章目录 1.同步索引库问题分析 2.ActiveM的介绍 2.1.什么是ActiveMQ 2.2.ActiveMQ的消息形式 3.ActiveMQ的安装 3.1.安装环境 3.2.安装步骤 4.Ac ...

  6. ActiveMQ的安装与使用。

    1.什么是ActiveMQ ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE .4规范的 JMS Provider实现,尽 ...

  7. Dubbo入门到精通学习笔记(八):ActiveMQ的安装与使用(单节点)、Redis的安装与使用(单节点)、FastDFS分布式文件系统的安装与使用(单节点)

    文章目录 ActiveMQ的安装与使用(单节点) 安装(单节点) 使用 目录结构 edu-common-parent edu-demo-mqproducer edu-demo-mqconsumer 测 ...

  8. Windows Server 2012 虚拟化实战:SCVMM的安装和部署

    本篇大概介绍一下在Windows Server 2012 R2上安装和部署SCVMM的过程及其注意事项.下图是我们数据中心SCVMM的基本架构,其中 SCVMM Database 是用于存储了所有配置 ...

  9. Linux下Redis的安装和部署

    一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...

  10. 他山之石——vs2013 安装与部署及程序打包

    C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio  .下载地址: InstallShield 2013 Limited Edi ...

随机推荐

  1. RestClient C# 举例 是用jsonbody ,并列出httpclient 等价的方式

    以下是使用 RestSharp 发送 POST 请求并附带 JSON 请求体的示例,以及相应的使用 HttpClient 的等价方式: 首先,使用 RestSharp: using System; u ...

  2. SuperSocket 服务端 和 SuperSocket.ClientEngine 客户端及普通客户端

    internal class Program { //static void Main(string[] args) //{ // byte[] arr = new byte[1024]; // 1. ...

  3. mac上zsh环境变量如何配置

    环境变量配置 在 macOS 上,如果你使用的是 zsh 作为默认的 shell,那么 /bin/zsh 的环境变量通常可以在以下文件中配置: ~/.zshrc ~/.zprofile ~/.zshe ...

  4. ModuleNotFoundError: No module named '_sqlite3' when Python3

    前言 运行 python 报错:ModuleNotFoundError: No module named '_sqlite3' 解决 重新编译安装 python ./configure --enabl ...

  5. goland JetBrains编辑器:代码爆红找不到引用,但项目可运行

    前言 goland JetBrains 编辑器:代码爆红找不到引用,但项目可运行 解决 goland 缓存已满,需要清除缓存

  6. Kubernetes:根据进程 Pid 获取 Pod 名称

    前言 在管理 Kubernetes 集群的过程中,我们经常会遇到这样一种情况:在某台节点上发现某个进程资源占用量很高,却又不知道是哪个容器里的进程.有没有办法可以根据进程 PID 快速找到 Pod 名 ...

  7. Ubuntu20.04搭建k8s v1.23.3版本集群

    前言 服务器统一版本 Ubuntu 20.04 搭建集群最少要两台服务器 每台服务器都需要 docker.环境配置.安装 kubeadm.kubelet 和 kubectl docker 安装 doc ...

  8. 小程序登录与OAuth规范

    登录认证是一个完整应用必备的模块,除非你的应用程序不需要任何与用户相关的功能 比如hao123 这种静态导航网站一般不会涉及用户体系. 很多人在最初接触小程序登录功能时,会误认为以微信为入口的小程序使 ...

  9. spring的三级缓存

    spring的三级缓存: Spring 容器的"三级缓存" Spring 容器的整个生命周期中,单例Bean对象是唯一的.即可以使用缓存来加速访问 Spring 源码中使用了大量的 ...

  10. ArrayBlockingQueue的take()底层原理

    一.ArrayBlockingQueue 的 take() 方法的底层源码的详细介绍 ArrayBlockingQueue 是 Java 并发包 (java.util.concurrent) 中的一个 ...