JMS学习(一)
轉(zhuǎn)自:https://blog.csdn.net/jiuqiyuliang/article/details/46701559
1.基本概念
JMS是java的消息服務(wù),JMS的客戶端之間可以通過(guò)JMS服務(wù)進(jìn)行異步的消息傳輸。
2.消息模型
P2P
Pub/Sub
3.P2P
模式:
? 特點(diǎn)
4.Pub/Sub
模式圖
客戶端將消息發(fā)送到主題。多個(gè)發(fā)布者將消息發(fā)送到Topic,系統(tǒng)將這些消息傳遞給多個(gè)訂閱者。
特點(diǎn):
5.JMS編程模型
1.ConnectionFactory:創(chuàng)建connection的工廠,針對(duì)兩種不同的消息模型,有QueueConnectionFactory和TopicConnectionFactory
2.Destination:對(duì)于生產(chǎn)者來(lái)說(shuō)它的destination是某個(gè)queue或topic;對(duì)于消費(fèi)者來(lái)說(shuō)它的destination也是
3.Connection:表示在客戶端和JMS系統(tǒng)之間建立的連接(對(duì)TCP/IP socket的包裝);connection可以產(chǎn)生多個(gè)session;connection有QueueConnection和TopicConnection兩種
4.session:操作消息的接口,可通過(guò)session創(chuàng)建生產(chǎn)者/消費(fèi)者/消息等;session 提供了事物的功能;當(dāng)我們要使用session發(fā)送/接收多個(gè)消息時(shí),可將這些動(dòng)作放到一個(gè)事物中;有QueueSession和TopicQueue兩種
5.消息的生產(chǎn)者:消息生產(chǎn)者由Session創(chuàng)建,并用于將消息發(fā)送到Destination。同樣,消息生產(chǎn)者分兩種類型:QueueSender和TopicPublisher。可以調(diào)用消息生產(chǎn)者的方法(send或publish方法)發(fā)送消息。
6.消息的消費(fèi)者:消息消費(fèi)者由Session創(chuàng)建,用于接收被發(fā)送到Destination的消息。兩種類型:QueueReceiver和TopicSubscriber。可分別通過(guò)session的createReceiver(Queue)或createSubscriber(Topic)來(lái)創(chuàng)建。當(dāng)然,也可以session的creatDurableSubscriber方法來(lái)創(chuàng)建持久化的訂閱者。
7.MessageListener:消息監(jiān)聽器。如果注冊(cè)了消息監(jiān)聽器,一旦消息到達(dá),將自動(dòng)調(diào)用監(jiān)聽器的onMessage方法
6.好處
1.提供消息靈活性
2.松散耦合
3.異步性
轉(zhuǎn)載于:https://www.cnblogs.com/hangzhi/p/9008433.html
總結(jié)
- 上一篇: java lambda 表达式中的双冒号
- 下一篇: lamba统计最大值,最小值,平均值,总