ActiveMQ使用java写的,所以天然跨平台,windows,各种类Unix系统都可运行,只需要下载对应的分发包即可。当前AciveMQ的最新版本是5.9.0。我目前在自己机子上安装的版本是5.8.0。

安装ActivceMQ需要先设置好系统环境。

  1. 空间剩余磁盘大于60M。(这个肯定没问题)

  2. 需要预装JDK,版本为1.6.x及其以上。(ActiveMQ就是用java写的,肯定要装java环境的嘛)

接下来就可以安装ActiveMQ了。

一种是直接下载分发包,地址是http://activemq.apache.org/。找到想要安装的版本后解压缩即可。

另一种是通过源代码安装,地址是http://activemq.apache.org/download.html。该源代码是使用maven作为构建工具的,所以需要先安装maven,如何安装可参见maven官网(MAC用户如果安装了homebrew的话,直接运行brew install maven即可)。 然后使用mvn clean install -Dmaven.test.skip=true来构建源代码。如果构建成功的话在target目录下可以看到生成的activemq-x.x-SNAPSHOT.zip文件,解压缩以后就可以使用了。

当然MAC用户的话安装就简单了,直接使用brew install activemq就行(不知道homebrew为何物的参见我写的文章:
Homebrew- MAC上的包管理利器)。ActiveMQ会被默认安装到/usr/local/Cellar/activemq。

1
2
3
4
5
6
$:/usr/local/Cellar/activemq$ ls
5.7.0 5.8.0
$:/usr/local/Cellar/activemq$ cd 5.8.0
$:/usr/local/Cellar/activemq/5.8.0$ ls
INSTALL_RECEIPT.json NOTICE bin
LICENSE README.txt libexec

HomeBrew会自动将activemq加入到系统路径中。

下表列出了与ActiveMQ有关的一些重要的环境变量。

  • ACTIVEMQ_HOME: /usr/local/Cellar/activemq/5.8.0/libexec

  • ACTIVEMQ_BASE: /usr/local/Cellar/activemq/5.8.0/libexec

  • ACTIVEMQ_CONF: /usr/local/Cellar/activemq/5.8.0/libexec/conf

  • ACTIVEMQ_DATA: /usr/local/Cellar/activemq/5.8.0/libexec/data

注意一下所有命令有时基于ActiveMQ 5.8.0版本,不同版本命令稍有不同。

先运行activemq setup ~/.activemqrc来指定activemq的环境配置文件。在这个文件中可以自定义activemq使用的JDK路径,jvm参数等信息。

1
2
3
4
5
$:/usr/local/Cellar/activemq/5.8.0$ activemq setup ~/.activemqrc
INFO: Loading '/Users/twer/.activemqrc'
INFO: Creating configuration file: /Users/twer/.activemqrc
INFO: It's recommend to limit access to '/Users/twer/.activemqrc' to the priviledged user
INFO: (recommended: chown 'twer':nogroup '/Users/twer/.activemqrc'; chmod 600 '/Users/twer/.activemqrc’)

运行activemq可以显示activemq相应的配置信息及可用的命令。(注意低版本中此命令是启动ActiveMQ)

运行activemq start可以在一个独立进程中启动activemq。

1
2
3
4
5
$:/usr/local/Cellar/activemq/5.8.0$ activemq start
INFO: Loading '/Users/twer/.activemqrc'
INFO: Using java '/System/Library/Frameworks/JavaVM.framework/Home/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : '/usr/local/Cellar/activemq/5.8.0/libexec/data/activemq-bowen-huang.local.pid' (pid '50873')

可以看到进程id是50873.

终止ActiveMQ的运行有两种方式。一种是使用activemq stop

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$:/usr/local/Cellar/activemq/5.8.0$ activemq stop
INFO: Loading '/Users/twer/.activemqrc'
INFO: Using java '/System/Library/Frameworks/JavaVM.framework/Home/bin/java'
INFO: Waiting at least 30 seconds for regular process termination of pid '50873' :
Java Runtime: Apple Inc. 1.6.0_65 /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Heap sizes: current=1035520k free=1033420k max=1035520k
JVM args: -Xms1G -Xmx1G -Djava.util.logging.config.file=logging.properties -Dactivemq.classpath=/usr/local/Cellar/activemq/5.8.0/libexec/conf; -Dactivemq.home=/usr/local/Cellar/activemq/5.8.0/libexec -Dactivemq.base=/usr/local/Cellar/activemq/5.8.0/libexec -Dactivemq.conf=/usr/local/Cellar/activemq/5.8.0/libexec/conf -Dactivemq.data=/usr/local/Cellar/activemq/5.8.0/libexec/data
Extensions classpath:
[/usr/local/Cellar/activemq/5.8.0/libexec/lib,/usr/local/Cellar/activemq/5.8.0/libexec/lib/camel,/usr/local/Cellar/activemq/5.8.0/libexec/lib/optional,/usr/local/Cellar/activemq/5.8.0/libexec/lib/web,/usr/local/Cellar/activemq/5.8.0/libexec/lib/extra]
ACTIVEMQ_HOME: /usr/local/Cellar/activemq/5.8.0/libexec
ACTIVEMQ_BASE: /usr/local/Cellar/activemq/5.8.0/libexec
ACTIVEMQ_CONF: /usr/local/Cellar/activemq/5.8.0/libexec/conf
ACTIVEMQ_DATA: /usr/local/Cellar/activemq/5.8.0/libexec/data
Connecting to pid: 50873
.Stopping broker: localhost
… FINISHED

另一种则是暴力的杀死进程,即kill 50873

运行activemq console则会在当前console中启动activemq。这种好处是不用多开一个进程,而且可以直接从console中看到log。关闭activemq也很简单,直接按ctrl+C终止终端运行。

ActiveMQ的默认端口是61616,可以检测这端口来判断ActiveMQ是否启动成功。

1
2
$:/usr/local/Cellar/activemq/5.8.0$ netstat -an|grep 61616
tcp46 0 0 *.61616 *.* LISTEN

也可以访问web终端http://localhost:8161/admin来查看和管理ActiveMQ。(默认用户名密码是admin/admin,你也可以修改配置,其在ActiveMQ安装目录下的libexec/conf/jetty-real.properties文件中)。

ActiveMQ支持xml文件格式对其进行配置。其实我们运行activemq start时,ActiveMQ就是默认使用了其安装目录下的libexec/conf/activemq.xml文件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$:/usr/local/Cellar/activemq/5.8.0/libexec/conf$ ls
activemq-command.xml broker.ks
activemq-demo.xml broker.ts
activemq-dynamic-network-broker1.xml camel.xml
activemq-dynamic-network-broker2.xml client.ks
activemq-jdbc.xml client.ts
activemq-scalability.xml credentials-enc.properties
activemq-security.xml credentials.properties
activemq-specjms.xml jetty-demo.xml
activemq-static-network-broker1.xml jetty-realm.properties
activemq-static-network-broker2.xml jetty.xml
activemq-stomp.xml jmx.access
activemq-throughput.xml jmx.password
activemq.xml log4j.properties
broker-localhost.cert logging.properties

我们当然可以使用自定义的配置文件,比如我们改用activemq-demo.xml。

1
2
3
4
5
$:/usr/local/Cellar/activemq/5.8.0/libexec$ activemq start xbean:./conf/activemq-demo.xml
INFO: Loading '/Users/twer/.activemqrc'
INFO: Using java '/System/Library/Frameworks/JavaVM.framework/Home/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : '/usr/local/Cellar/activemq/5.8.0/libexec/data/activemq-bowen-huang.local.pid' (pid '51375’)

ActiveMQ在5.8.0版本及之后在安装包中包含了一些demo来演示对ActiveMQ的使用。使用方式很简单,首先采用activemq-demo.xml配置文件来启动ActiveMQ,然后访问http://localhost:8161/demo/尽情探索把。

这些demo的源码都在ActiveMQ安装目录下的libexec目录中,里面有个user-guide.html,可以用浏览器直接打开,它详细描述了该如何使用这些demo。

ActiveMQ第一弹:安装与运行的更多相关文章

  1. Docker第一弹:下载运行hello-world程序

    1.需要安装好docker程序 没有安装的请看在centos 6.8下安装docker 2.从docker镜像仓库中拉去hello-world镜像 docker pull hello-world 3. ...

  2. [翻译]第一天 - 在 Windows 下安装和运行 .NET Core

    原文: http://michaelcrump.net/getting-started-with-aspnetcore/ 免责声明:我不是 .NET Core 开发团队的一员,并且使用的是公开.可用的 ...

  3. 【OpenCV入门指南】第一篇 安装OpenCV

    http://blog.csdn.net/morewindows/article/details/8225783/ win10下vs2015配置Opencv3.1.0过程详解(转) http://ww ...

  4. 学习ActiveMQ(一):安装与启动

    一:简单介绍 AvtiveMQ是Apaceh所研发的一个开源消息中间件,用来在服务与服务之间进行异步通信,是基于JMS规范的.activemq包含发送者(sender).消息(message).队列( ...

  5. JVM第一弹

    JVM第一弹 基本概念 JVM是可运行java代码的假想计算机,包括一套字节码指令集,一组寄存器,一个栈,一个垃圾回收.堆和一个存储方法域.JVM是运行在操作系统之上的,它与硬件没有直接的交互. 运行 ...

  6. 关于『进击的Markdown』:第一弹

    关于『进击的Markdown』:第一弹 建议缩放90%食用 比起隐蔽物下的狙击手,Markdown更像冲锋陷阵的阵头兵 简单.粗暴.直接.而且好上手 各位晚上好! 早饭吃了吗您 我 今 天 没 吃 M ...

  7. ActiveMQ 简介与安装

    一. 概述与介绍 ActiveMQ 是Apache出品,最流行的.功能强大的即时通讯和集成模式的开源服务器.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provide ...

  8. Mac系统下使用VirtualBox虚拟机安装win7--第一步 安装vbox虚拟机

    Mac系统下使用VirtualBox虚拟机安装win7操作步骤: 第一步 安装vbox虚拟机 1.先下载vbox,下载地址:: https://www.virtualbox.org/wiki/Down ...

  9. ActiveMQ第二弹:使用Spring JMS与ActiveMQ通讯

    本文章的完整代码可从我的github中下载:https://github.com/huangbowen521/SpringJMSSample.git 上一篇文章中介绍了如何安装和运行ActiveMQ. ...

随机推荐

  1. 直接使用docker而无须加sudo

    从0.5.2开始docker的守护进程总是以root用户来运行.docker守护进程绑定的是Unix的socket而不是一个TCP端口.Unix的socket默认属于root用户,所以,使用docke ...

  2. openjudge ROADS

    726:ROADS 总时间限制: 1000ms 内存限制: 65536kB 描述 N cities named with numbers 1 ... N are connected with one- ...

  3. ffmpeg未整理好,有时间整理下

    v  容器(Container) v  容器就是一种文件(封装)格式,比如flv.mkv.ts.mp4.rmvb.avi等.包含下面5种流以及文件头信息. v  流(Stream) v  是一种视频数 ...

  4. Selenium2+python自动化17-JS处理滚动条

    前言 selenium并不是万能的,有时候页面上操作无法实现的,这时候就需要借助JS来完成了. 常见场景: 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的. 这时候 ...

  5. ArcEngine编写WebService

    开发环境:Windows7旗舰版64bit.VisualStudio2008 With SP1.ArcEngine10.0.NetFrameWork4.0.IIS7和C#开发语言. 背景:ArcEng ...

  6. 原生js获取样式

    js中的获取样式是在是让人头疼,为了方便兼容多个浏览器,把设置样式封装成一个函数. 函数如下: function getStyle(element, property) { var value = e ...

  7. 『BASH』——文件权限批量恢复脚本——「Permission Revovery」

    一.恢复指定程序包所有文件的权限: #!/bin/bash #Assume that you have mounted a correct orignal-system on /mnt read -p ...

  8. ubuntu下配置lamp环境

    安装MySQL sudo apt-get install mysql-server mysql-client 安装php模块 Sudo apt-get install php5 安装Apache2 S ...

  9. WebService 基本操作

    1.新建asp.net web 应用程序 2.添加web 服务webservice.asmx public string HelloWorld(int a) { if (a==1) { return ...

  10. Java起源、发展历程、环境变量、第一个Java程序等【1】

    若有不正之处,请多多谅解并欢迎批评指正,不甚感激. 请尊重作者劳动成果,转载请标明原文链接: 本文原创作者:pipi-changing 本文原创出处:http://www.cnblogs.com/pi ...