ActiveMQ —— JMS 消息模型介绍(点对点、发布订阅)

/ 中间件 / 414浏览

消息模型是JMS(Java Message Service)重要的概念,主要有:

点对点

Example:银行业务

我们在银行排队,并不知道哪一个柜台专员会办理我们的业务。柜台专员办理完某个客户的业务后,她就空闲了,此时她会要求排队等候中的下一个客户来办理业务。然后其他柜台帮助其他客户办理业务 。
同样的,在点对点消息模型中,如果有多个接收者监听队列,我们也无法知道某条特定的消息会由哪一个接收者处理。这种不确定性实际上有很多好处,因为我们只需要简单地为队列添加新的监听器就能提高应用的消息处理能力。

点对点消息模型图: alt

发布/订阅

Example:报刊杂志订阅

比如北京日报、潇湘晨报等。那么这些个我们订阅的报纸就相当于发布订阅模式里的topic。有很多个人订阅报纸,也有人可能和我订阅了相同的报纸。那么在这里相当于我们在同一个topic里注册了。对于一份报纸发行方来说,它和所有的订阅者就构成了一个1对多的关系。

这种关系如下图所示: alt