ActiveMQ学习记录

一、什么是ActiveMQ?

ActiveMQ是Apache提供的一个开源消息系统,它是完全使用java开发,可以很好的支持JMS规范。

二、什么是JMS?

JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间或者分布式系统中发送消息,进行异步通信。如果两个程序之间需要进行通信,我们使用一个JMS服务,进行中间的转发,通过JMS的使用,我们可以解除两个程序之间的耦合。例如,我们在点外卖的时候,当我们下单之后,软件会提示我们“下单成功,正在等待商家接单”的消息。因为点外卖的人流很多,在同一时刻会有许多人进行下订单的请求,如果不使用异步消息机制,第二个人必须要等第一个人执行完了,才能够继续执行,这就给顾客带来了极差的体验,万一一次的请求时间过长,顾客就会失去耐心而不会再继续等待了。

三、ActiveMQ的作用?

ActiveMQ支持同步请求与异步请求,首先解释一下什么是同步请求与异步请求,同步请求就是在同一个时间点,如果有两个用户执行了同一个操作,那么,第二个用户只能等待第一个用户执行完了请求才能够进行执行;异步请求就是在同一个时间点,第二个用户能够不用等待,两个用户的请求同时执行。个人建议:如果使用ActiveMQ去执行同步请求,我觉得还不如不用该消息中间件。

四、ActiveMQ支持的消息模式?

两种消息模式:一种是点对点通讯(PointToPoint),也称作PTP。该通讯模式是一个生产者对应一个消费者,也就是说一则消息只能够被一个消费者所消费掉。假设一个场景:现在有一个生产者,两个消费者,生产者发送了10条信息给Queue(队列),此时两个消费者均摊消息,均摊的规则是轮询,也就是一位消费者接收到的是1,3,5,7,9,另外一位消费者接收到的是2,4,6,8,10。

点对点模型图:

             

PTP特点:1.一则消息只能被一位消费者消费;

                  2.生产者发送消息时,消费者可在线,也可不在线;同样,消费者接收消息时,生产者可以不在线。

另一种是发布/订阅(pulisher/subscriber),对于该通讯模式,首先订阅者要先去订阅,然后发布者发布消息给所有的订阅者,换句话说,发布/订阅模式所产生的一则消息可以被多个订阅者所消费。但是这种模式有一个特点就是订阅者要先在线订阅,发布者发送的消息才能够被接收。

发布/订阅模型图:

                   

发布/订阅特点:1.一则消息可以被多位订阅者消费;

                          2.订阅者要先进行订阅,才能够接收到发布者所发布的消息。

五、项目展示?

1.Activemq客户端安装:

去Activemq官网http://activemq.apache.org/download-archives.html下载压缩包,解压即可使用,前提是要安装了JDK,当然,我想都了解到了Activemq,不能在机器上连java环境都没装。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值