操作系统版本:CentOS Linux release 7.8.2003 (Core)
activemq版本:5.14.3
jdk版本:java version "1.7.0_261"
一、简介
ActiveMQ是Apache软件基金会所研发的开源消息中间件;由于ActiveMQ是一个纯Java程序(由Java开发而成),因此只需要操作系统支持Java虚拟机,ActiveMQ便可运行。
二、优缺点
2.1、优点:
- Apache出品,流行的,能力强劲、开源消息
- 支持客户端Java, C,C++,C#,Ruby,Perl,Python,PHP
- 支持协议:OpenWire,Stomp,REST,WS-Notification,XMPP,AMQP
其它优点自行搜索,如需要性能强劲,处理更多 更海量的消息,请选择Kafka
2.2、缺点:
由于历史悠久,历史包袱较多,版本更新很缓慢。集群模式需要依赖Zookeeper实现。最新架构的产品被命名为Apollo,号称下一代ActiveMQ,目前案例较少
2.3、其它
插几句其它的题外话,市面上的MQ(消息队列或称消息中间件)系统有很多,如何选择一般优先考虑以下几方面:
- 该mq系统的社区氛围是否浓厚,如果你要找的资料通过百度都搜索不到,需要通过一些其它手段(比如科学上网,你懂的)才能找到资料,那一般不会选择该系统
- mq系统必须是能支持多个客户端多个编程语言的,例:如果看中的mq系统只支持PHP,后期项目因为某些原因要使用JAVA重构,那这个mq系统也要重新选型。等等等等类似的问题。。。。。。
三、安装
3.1、安装jdk,并设置相关环境变量
# 安装jdk1.7版本:``yum -y ``install` `java-1.7.0-openjdk-devel.x86_64`` ``# 设置全局java环境变量,这些变量对linux当中的所有的用户都可以用:``vi` `/etc/profile` `export` `JAVA_HOME=``/usr/lib/jvm/java-1``.7.0-openjdk-1.7.0.241-2.6.20.0.el7_7.x86_64``export` `CLASSPATH=.:$JAVA_HOME``/jre/lib/rt``.jar:$JAVA_HOME``/lib/dt``.jar:$JAVA_HOME``/lib/tools``.jar``export` `PATH=$PATH:$JAVA_HOME``/bin` `# 刷新全局变量,使我们上面的设置立即生效``source` `/etc/profile` `# 查看java版本:``java -version
3.2、安装ActiveMQ
下载
wget http://archive.apache.org/dist/activemq/5.14.3/apache-activemq-5.14.3-bin.tar.gz
如果下载的比较慢,可以自行进入官网的以下地址进行下载
http://archive.apache.org/dist/activemq/
然后将下载好的压缩包上传到linux环境下
安装并启动
# 解压``tar -zxvf ./apache-activemq-5.14.3-bin.tar.gz` `# 进入解压好的activemq目录`` ``cd apache-activemq-5.14.3/bin/`` ` ` ``# 启动服务并让服务一直保持在后台运行`` ``./activemq start `` ` ` ``# 停止服务`` ``./activemq stop`` ` ` ``# 重启服务`` ``./activemq restart`` ` `# 以调试模式启动,并将日志输出到当前窗口``./activemq console
ActiveMQ默认的管理后台
ActiveMQ自带了一个web服务器(jetty,是java开发的),所以也同时自带了一个web版的管理ActiveMQ的UI界面,apache-activemq-5.14.3/conf/jetty.xml 文件里面是jetty服务器的基本配置,例如:jetty.xml里面有默认的端口号配置(端口号默认:8161)****
访问默认的管理后台
ip地址:8161/admin/ 默认的用户名和密码都是admin` `#注意:不要忘了在防火墙开通8161端口或直接关闭防火墙,如果是云服务器,记得在 安全组规则 中的 入方向规则,开通8161端口
界面如下:
在这个后台管理页面可以进行 创建队列、删除队列、往队列里面插入数据等操作,基本都是一些常见的英文单词,相信都能看懂的= =