[ActiveMQ]消息中间件基本概念及安装

ActiveMQ是由Apache出品的,一款最流行的,能力强劲的开源消息总线。ActiveMQ是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,它非常快速,支持多种语言的客户端和协议,而且可以非常容易的嵌入到企业的应用环境中,并有许多高级功能。

MQ
首先简单的介绍一下MQ,MQ英文名MessageQueue,中文名也就是大家用的消息队列,干嘛用的呢,说白了就是一个消息的接受和转发的容器,可用于消息推送。

下面介绍一下ActiveMQ的消息队列模型

1Point-to-Point(P2P)
2、 Publish/Subscribe(Pub/Sub)

P2P

  • 涉及到的概念
①消息队列(Queue)

②发送者(Sender) 

③接收者(Receiver) 

④每个消息都被发送到一个特定的队列,接收者从队列中获取消息。
队列保留着消息,直到他们被消费或超时。
  • P2P的特点
①每个消息只有一个消费者(Consumer)(即一旦被消费,消息就不再在消息队列中)

②发送者和接收者之间在时间上没有依赖性,也就是说当发送者发送了消息之后,
不管接收者有没有正在运行,它不会影响到消息被发送到队列

③接收者在成功接收消息之后需向队列应答成功
如果你希望发送的每个消息都应该被成功处理的话,那么你需要P2P模式。

Pub/Sub

  • 涉及到的概念
①主题(Topic)

②发布者(Publisher)

③订阅者(Subscriber) 
客户端将消息发送到主题。多个发布者将消息发送到Topic,系统将这些消息传递给多个订阅者。
  • Pub/Sub的特点
①每个消息可以有多个消费者。

②发布者和订阅者之间有时间上的依赖性。针对某个主题(Topic)的订阅者。
它必须创建一个订阅者之后,才能消费发布者的消息,而且为了消费消息,订阅者必须保持运行的状态。

③为了缓和这样严格的时间相关性,JMS允许订阅者创建一个可持久化的订阅。
这样,即使订阅者没有被激活(运行),它也能接收到发布者的消息。
如果你希望发送的消息可以不被做任何处理、或者被一个消息者处理、
或者可以被多个消费者处理的话,那么可以采用Pub/Sub模型

消息中间件有很多的用途和优点:

1. 将数据从一个应用程序传送到另一个应用程序,或者从软件的一个模块传送到另外一个模块。

2. 负责建立网络通信的通道,进行数据的可靠传送。 

3. 保证数据不重发,不丢失。

4. 能够实现跨平台操作,能够为不同操作系统上的软件集成技工数据传送服务。

下载ActiveMQ

官方网站:http://activemq.apache.org/ 

本文中使用的是apache-activemq-5.13.2 Windows版。

1

从它的目录来说,还是很简单的:

bin存放的是脚本文件

conf存放的是基本配置文件

data存放的是日志文件

docs存放的是说明文档

examples存放的是简单的实例

lib存放的是activemq所需jar包

webapps用于存放项目的目录

启动ActiveMQ

我们了解activemq的基本目录,下面我们运行一下activemq服务。

双击bin目录下的activemq.bat脚本文件或运行自己电脑版本下的activemq.bat

2

测试

ActiveMQ默认使用的TCP连接端口是61616, 通过查看该端口的信息可以测试ActiveMQ是否成功启动 netstat -an|find “61616”
C:\Users>netstat -an|find "61616"
  TCP    0.0.0.0:61616          0.0.0.0:0              LISTENING
  TCP    [::]:61616             [::]:0                 LISTENING

监控

ActiveMQ默认启动时,启动了内置的jetty服务器,提供一个用于监控ActiveMQ的admin应用。 

admin:http://127.0.0.1:8161/admin/

用户名和密码都是admin

3

至此,服务端启动完毕

停止服务器,只需要按着Ctrl+Shift+C,之后输入y即可。

文章参考:

http://blog.csdn.net/jiuqiyuliang/article/details/47160259

ActiveMQ简单的HelloWorld实例:

http://blog.csdn.net/jiuqiyuliang/article/details/48608237

Spring和ActiveMQ整合的完整实例

http://blog.csdn.net/jiuqiyuliang/article/details/48758203

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值