首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

JMS读书函记

2012-11-01 
JMS读书札记?JMS的优势适用于应用集成,提高可伸缩性,通过增加消息接收者,增加吞吐量,但是瓶颈有时在数据库

JMS读书札记

?

JMS的优势


适用于应用集成,提高可伸缩性,通过增加消息接收者,增加吞吐量,但是瓶颈有时在数据库端,

?

RPC与JMS的主要区别就是RPC是同步的而JMS是异步的,局部故障不影响整体使用
webservice也是同步的
JMS中间件可以是保存并转发


?

JMS编程对象

connectionfactory?

connection

session

destination

message

messageproducer

messageconsumer

messagelistener


连接工厂-----连接---会话----消息、消息生产者、消息消费者


目的地--topic、Queue

?

?

事务单元--session


?

一个connection 对应着多个session 组成一个session池


?

点对点

点对点传送一般来讲使用基于队列的API(其他有发布订阅模型)

QueueConnectionFactory

Queue

QueueSession

Message

QueueSender

QueueReceiver


?

5、发布-订阅模型TopicConnectionFactoryTopicTopicSessionMessageTopicPublisherTopicSubscriber
EDA 事件驱动机制JNDI是动态的,也是虚拟的,因为JNDI是可以连接其他JNDI,所以这个地址是虚拟的。为什么是动态的呢?session比如topicsession有可能是事务性的,什么是事务性的session呢???
JMS消息体、消息头、消息属性很多set方法设置的消息头delivermode 持久非持久过期时间replyto 通过replyto消息接收者可以得到发送者或者指定reply的destination,对于特定的provider,topic和queue有的是new的比如activemq,但是有些呢是create,通用是create的,由session create而来
Topic topic= new ActiveMQTopic("testTopic");???Queue queue = new ActiveMQQueue("testQueue");???
属性如何设置?
TextMessage message = pubSession.createTextMessage();message.setText(text);message.setStringProperty("username",username);publisher.publish(message);
?

属性是不能被改变的,但是可以被清空

?

点对点是sender,publisher

一对多是publish、subscriber

?

如何用JMS传递一个对象呢???是序列化还是ObjectMessage???

payload指的就是消息中存有对象

?

序列化后的2个类在不同的JVM上,导致的问题??只要建立相同的类就可以,那么必须要求发送方和接收方必须有同样的类

?

?

热点排行