ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

一、什么是ActiveMQ度娘给出的定义:ActiveMQ的官网打出的标语(如上图):大意是:兼容性好并且功能强大的开源多协议消息中间件,那具体是怎么体现的呢?1.兼容性好:ActiveMQ可以

大家好,又见面了,我是全栈君。

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

 

一、什么是ActiveMQ

度娘给出的定义:

Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件;由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。

ActiveMQ的官网打出的标语(如上图):

Flexible & Powerful Open Source Multi-Protocol Messaging

大意是:兼容性好并且功能强大的开源多协议消息中间件,那具体是怎么体现的呢?
1.兼容性好:
ActiveMQ可以很容易内嵌到使用Spring的系统里面去,
通过了常见J2EE服务器(如 Geronimo,JBoss 4,GlassFish,WebLogic)的测试,其中通过JCA 1.5 resource adaptors的配置,可以让ActiveMQ可以自动的部署到任何兼容J2EE 1.4 商业服务器上
2.功能强大:
支持通过JDBC和journal提供高速的消息持久化,
支持客户端-服务器,点对点
支持Ajax
支持与Axis的整合, WebServices
可以很容易的调用内嵌JMS provider进行测试
从设计上保证了高性能的集群

3.多协议:
应用协议有OpenWire,Stomp REST,WS Notification,XMPP,AMQP,
还支持多种传送协议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA
总之一句话,ActiveMQ是一个消息中间件并且很好很强大,需要用到消息中间件的时候我们选他就对了。

二、ActiveMQ的名词解释

在JMS规范中,所有的标准定义都在javax.jms包中,它的功能实现和我们即将要写的代码中都会用到下面的内容:

1.Destination(目的地)
用于对Message进行管理的对象,由ActiveMQ负责维护。
MessageProducer需要指定Destination才能发送消息,MessageConsumer需要指定Destination才能接收消息。
2.Producer(消息生产者)
负责生成消息并发送目的地。应用接口为MessageProducer。
3.Consumer(消息消费者)
负责从目的地中消费【处理|监听|订阅】Message。应用接口为MessageConsumer
4.Message(消息)
消息封装一次通信的内容。常见类型有:StreamMessage、BytesMessage、TextMessage、ObjectMessage、MapMessage。
5.ConnectionFactory(连接工厂)
用于创建连接的工厂类型
6.Connection(连接)
用于建立访问ActiveMQ连接的类型, 由链接工厂创建。
7.Session(会话)
一次持久有效有状态的访问。由connection创建,是具体操作消息的基础支撑。
8.Queue & Topic
Queue是队列目的地,Topic是主题目的地。都是Destination的子接口。
Queue特点: 队列中的消息,默认只能由唯一的一个消费者处理。一旦处理,消息删除。
Topic特点:主题中的消息,会发送给所有的消费者同时处理。只有在消息可以重复处理的业务场景中可使用。
9.PTP(Point to Point,点对点消息模型)
就是基于Queue实现的消息处理方式。
10.PUB & SUB(Publish & Subscribe ,消息的发布/订阅模型)
是基于Topic实现的消息处理方式。

三、Windows下安装ActiveMQ

官网上下载即可:

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

下载后直接解压缩直接就能用(免安装)。

它的目录结构:

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

bin/是服务启动相关的命令文件所在目录

data/是默认持久化文件所在目录

docs/里面放的是用户手册

conf/是配置文件所在目录,任何配置文件修改后,必须重启ActiveMQ,才能生效.
有几个配置文件需要提下,后面会用到:
1.activemq.xml
就是spring配置文件。配置的是ActiveMQ应用使用的默认对象组件.
transportConnectors标签 – 配置链接端口信息的. 其中的端口号61616是ActiveMQ对外发布的tcp协议访问端口. 就是java代码访问ActiveMQ时使用的端口.

配置安全认证和持久化都是在这个文件里面。

2.jetty.xml
spring配置文件, ActiveMQ使用的是jetty提供HTTP服务,因此需要该文件用于配置jetty服务器的默认对象组件.

3.users.properties
内容信息: 用户名=密码

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

是用于配置客户端通过协议访问ActiveMQ时,使用的用户名和密码.

4.groups.properties

内容信息: 用户组=用户1,用户2(多个用户中间用逗号隔开)

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

类似于角色的概念,也类似于操作系统用户所在的用户组

四、启动服务,并到页面控制台查看
双击bin\win64目录下的activemq批处理文件,即可启动(如果系统是32位的,就启动bin\win32目录下的)。

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

启动完成后,可以进入页面控制台查看。

同RabbitMQ类似,ActiveMQ也默认支持一个网页版的服务查看站点,可以实现ActiveMQ中消息相关数据的页面查看.
ActiveMQ网页版管理站点的默认端口8161端口就配置在jetty.xml文件中。

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

访问http://localhost:8161/admin/,输入默认的用户名和密码admin/admin,即可看到管理台页面。

可以看到在前面名词解释中提到的内容

 

ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

 

至此,ActiveMQ就安装完了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120888.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux c——dup( )和dup2( )函数详解

    dup()函数和dup2()函数书上在文件操作那一章,已经讲过了,这周看重定向这块,发现它挺重要,就再看了回,记录下。1、dup函数头文件及函数定义:#include<unistd.h>intdup(intoldfd);dup用来复制参数oldfd所指的文件描述符。当复制成功是,返回最小的尚未被使用过的文件描述符,若有错误则返回-1.错误代码存入errno中…

    2022年4月4日
    155
  • DHCP协议原理及应用[通俗易懂]

    DHCP协议原理及应用[通俗易懂]DHCP:动态主机配置协议   TCP/IP协议想要运行正常的话,网络中的主机和路由器不可避免地需要配置一些信息(如接口的IP地址等)。有了这些配置信息主机/路由器才能提供/使用特定的网络服务。   主机信息的必要元素有:IP地址、子网掩码、DNS服务器IP地址   TCP/IP协议配置主机信息主要有三种方法: 1.手动配置 2.动态获取 3.根据特定算法计算。

    2022年5月10日
    65
  • 半小时实现Java手撸网络爬虫框架!!(附完整源码,建议收藏)

    半小时实现Java手撸网络爬虫框架!!(附完整源码,建议收藏)半小时实现Java网络爬虫,附完整源码,冰河强烈建议收藏!!

    2022年8月22日
    6
  • 带你简单了解音频放大电路

    带你简单了解音频放大电路音频放大电路简介能够为负载提供足够大的功率放大倍数的电路称之为功率放大电路,简称功放。音频功率放大器的基本功能是把前级送来的声频信号不失真地加以放大,输出足够的功率去驱动负载(扬声器)发出优美的声音。在音频电路中,往往要求放大电路的输出级能输出足够大的功率去驱动扬声器等负载。音频放大电路在各种音频设备上被广泛使用。因此放大器一般包括前置放大和功率放大两部分,前者以放大信号振幅为目的,因而又称电压…

    2022年6月6日
    36
  • rabbit mq使用_rabbitmq部署

    rabbit mq使用_rabbitmq部署原文转载:http://blog.csdn.net/whycold/article/details/41119807推荐文章:SpringBoot+RabbitMq的使用一、简介MQ全称为MessageQueue,消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息…

    2022年10月3日
    2
  • phpstorm 中git 的使用

    phpstorm 中git 的使用

    2021年10月17日
    81

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号