JMS - 异步消息的使者
2009-09-23 00:00:00 来源:WEB开发网Java消息服务(JMS)实现了异步消息的传递,在企业级的应用中,极大的简化了异步通信系统的实现,使用消息传递的优点在于保持了系统的松散耦合。
JMS支持点到点(P2P)模式和发布-订阅(pub/sub)模式。点到点消息模式依赖于消息队列概念,它将消息发送到称为队列(Queue)的特定目的地,接受者从队列中获取消息,对其进行处理。发布-订阅模式则是将消息发送到成为主题(Topic)的目的地,使用者通过订阅消息来获取。因此,我们可以简单的将Queue和Topic理解为消息的存储器,或者接受器,通过它将消息转发给消息最终的接收者。对于消息,可以是一个简单的字符串,一段二进制流,或者一个任意的对象,当前JMS支持五种类型的消息:TextMessage、MapMessage、ByteMessage、 StreamMessage、ObjectMessage。
下面来看一段P2P的完整实现,
sender:
Context context = new InitialContext();
QueueConnectionFactory queueConnectionFactory = (QueueConnectionFactory) context.lookup("QueueConnectionFactoryTest");
QueueConnection queueConnection = queueConnectionFactory.createQueueConnection();
QueueSession queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
Queue queue = (Queue) context.lookup("QueueTest");
QueueSender queueSender = queueSession.createSender(queue);
TextMessage message = queueSession.createTextMessage();
message.setText("Hello JMS!");
queueSender.send(message);
queueConnection.close();
- ››JMS、XML和异构企业
- ››消息称中国移动即将获得iPhone 4销售权
- ››异步调用与线程(总结篇)
- ››消息称联通高层赴美谈引入iPhone4 将带WiFi
- ››消息称微软将在近期发布IE9 beta
- ››消息称台湾最快7到8月引入新版iPhone
- ››消息称微软中国Windows 7正版验证计划或将推迟
- ››消息称富士康今年交付2400万部iPhone 4G
- ››消息称谷歌与运营商分享 Android 广告收入
- ››异步操作和 Web 服务,第 2 部分:构建异步 Web 服...
- ››异步操作和 Web 服务,第 3 部分: 向 Web 服务添加...
- ››消息称联通约见开发者商谈 iPhone 应用软件
赞助商链接