ActiveMQ介绍及linux下安装ActiveMQ

ActiveMQ介绍

概述

ActiveMQ是Apache软件基金下的一个开源软件,它遵循JMS1.1规范(Java Message Service),是消息队列服务,是面向消息中间件(MOM)的最终实现,它为企业消息传递提供高可用、出色性能、可扩展、稳定和安全保障。

架构

在ActiveMQ中,生产者(Producer)发送消息到Queue或者Topic中,消费者(consumer)通过ActiveMQ支持的传输协议连接到ActiveMQ接受消息并做处理。

图-1 ActiveMQ架构

  • 生产者(Producer):消息的生产者。
  • 消费者(Consumer):消息的消费者。
  • 队列(Queue):用于存储还未被消费者消费的消息,点对点模型以Queue作为通信载体。
  • 主题(Topic):用于存储还未被消费者消费的消息,发布订阅模式使用Topic作为通信载体。
  • 传输协议:ActiveMQ允许客户端使用多种协议来连接,包括:TCP、AMQP、STOMP、MQTT、WS。

相关概念

  • JMS:Java Message Service,JMS是一个java平台中关于面向消息中间件的API。
  • PTP:The point-to-point,可以同步或者异步的发送和接受消息,每个消息仅被发送一次,且消费一次。
  • pub/sub:publish/subscribe发布订阅,消息生产者将消息发到topic中,消息消费者从topic读取,与PTP不同的是,消息可以被重复消费。
  • 集群模式:分为单节点和主从两种。
  • 单节点:ActiveMQ只有一个实例,单独运行。
  • 主从:三个ActiveMQ组成ActiveMQ主从模式,实现高可用的架构。
  • 集群健康状态:分为健康和不健康两种。
  • 健康:集群中组件运行正常时,对应集群将处于健康状态。
  • 不健康:集群中组件运行状态异常时,对应集群将处于不健康状态。

应用场景

消息中间件ActiveMQ适用于以下场景:

  • 应用解耦:消息中间件ActiveMQ可以插入应用中间,为两边应用提供接口,实现应用通过消息中间件进行通信。
  • 异步处理:消息中间件ActiveMQ提供异步处理机制,允许应用把一些消息放入消息中间件中,并不立即处理它,在之后需要的时候再处理。
  • 流量削峰:使用消息中间件ActiveMQ能够使关键组件支撑突发访问压力,不会因为突发的超负荷请求而完全崩溃。
  • 其他场景:可以用于日志处理、消息通讯等。

ActiveMQ安装

1. 官网下载

https://archive.apache.org/dist/activemq/5.15.9/apache-activemq-5.15.9-bin.tar.gz

bash 复制代码
[root@master opt]# pwd
/opt
[root@master opt]# wget https://archive.apache.org/dist/activemq/5.15.9/apache-activemq-5.15.9-bin.tar.gz

2. 解压包

bash 复制代码
[root@master opt]# tar -zxvf apache-activemq-5.15.9-bin.tar.gz 
apache-activemq-5.15.9/
apache-activemq-5.15.9/conf/
apache-activemq-5.15.9/data/
...

3. 根目录下新建myactivemq 并将解压的文件拷贝到目录下

bash 复制代码
[root@master opt]# mkdir /myactivemq
[root@master opt]# cp -r apache-activemq-5.15.9 /myactivemq/
[root@master opt]# cd /myactivemq/
[root@master myactivemq]# ls
apache-activemq-5.15.9

4.普通启动 ./activemq start

  • ./activemq start 启动
  • ./activemq restart 重启
  • ./activemq stop 关闭
  • ./activemq start > /myactivemq/myactivemqrun.log 带日志文件的启动
bash 复制代码
[root@master bin]# pwd
/myactivemq/apache-activemq-5.15.9/bin
[root@master bin]# ./activemq start #普通启动命令,前提要安装jdk
INFO: Loading '/myactivemq/apache-activemq-5.15.9//bin/env'
INFO: Using java '/usr/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : '/myactivemq/apache-activemq-5.15.9//data/activemq.pid' (pid '80056')
[root@master bin]# java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
[root@master bin]# which java
/usr/bin/java

查看activemq是否启动命令:

  • ps -ef | grep activemq | grep -v grep
  • netstat -anp | grep 61616
  • lsof -i:61616

5.查看页面

http://192.168.190.200:8161/ 默认用户名\密码 admin、admin

概念介绍来源: ActiveMQ介绍

相关推荐
星哥说事12 分钟前
开源综合性网络安全检测和运维工具-TscanClient
运维·web安全·开源
ajassi200013 分钟前
开源 java android app 开发(十一)调试、发布
android·java·linux·开源
小李飞刀李寻欢38 分钟前
使用kubeadm部署Kubernetes(k8s)集群的步骤
linux·服务器·ubuntu·kubernetes·k8s
运维成长记1 小时前
阿里云实践创建实例步骤
linux·运维·服务器·阿里云·云计算
THe CHallEnge of THe BrAve1 小时前
Linux检验库是否安装成功
linux·运维·服务器
Hello.Reader1 小时前
NGINX 四层 SSL/TLS 支持ngx_stream_ssl_module
运维·nginx·ssl
Estar.Lee1 小时前
如何在Debian中提高phpstorm的稳定性
运维·debian·api·免费api·phpstorm
藥瓿锻1 小时前
2024 CKS题库+详尽解析| 1. kube-bench 修复不安全项
运维·安全·docker·云原生·容器·kubernetes·cks
晓北斗NorSnow2 小时前
没有宝塔面板的服务器上的WordPress网站打包下载到本地?
运维·服务器
算家计算2 小时前
告别复杂文档解析噩梦!MonkeyOCR 本地部署教程:支持公式/表格多元素结构化
linux·人工智能·开源