JMS学习总结 (一)

来源:互联网 发布:数据安全保护制度 编辑:程序博客网 时间:2024/05/12 19:05

Java消息服务学习总结(一)

     由于毕业设计的缘故,最近开始接触并学习JMS(Java Message Service)Java消息服务的相关预备知识。经过一周多的学习,现在将学到的一些东西总结就一下。


    消息传送机制的优点
    1.异构集成:
使用消息传送机制可以在完全不同的平台上实现应用程序和系统请求调用服务。
去多开源消息传送系统和商业消息传送系统使用了一种集成消息桥,该桥能够将使用JMS的一条消息转换为通用的内部消息格式,一次来实现Java和其他语言和平台之间的无缝连接。
   2.缓解系统瓶颈:
将请求发送到一个消息传送系统,该系统将该请求分发给多个消息侦察器组件,以此来缓解单独采用点对点同步通信带来的系统瓶颈问题。
   3.提高可伸缩性:
由于消息排队等候处理,队列中的消息数量,或者称为队列深度开始逐渐增大,等待的响应时间也开始变长,吞吐量也会下降。于是向队列中添加多个并发消息侦听器以便并发处理更多的请求。
   4.体系结构灵活性和敏捷性:
使用消息传送机制,各个子系统,组件,乃至服务器能够抽象出来。
   专业词:面向服务体系结构(Service Oriented Architecture,SOA)    企业服务总线(Enterprise Service Bus,ESB)
   在异步消息传送机制中,应用程序使用一个简单的API来构建一条消息,然后再将该消息转发给面向消息的中间件,以便传送给一个或多个预定接收者。一条消息就是一条业务数据包,他通过网络从一个应用程序发送给其他应用程序。消息应该是自描述的,因为它应该包含所有必要的上下文,以便允许接收者独立的完成他们的工作。

 集中式体系结构
使用集中式体系结构的消息传送系统,依赖一台消息服务器。消息服务器也成为消息路由器或代理,负责将从一个消息传送客户端向其他客户端传送信息。消息服务器可以实现发送客户端和其他接收客户端的去耦。客户端仅仅会看到消息传送服务器,而不会看到其他客户端,这将允许在不影响系统整体的情况下添加和删除客户端。     通常使用星型拓扑结构。

分散式体系结构
分散式体系结构都在使用网络层IP组播。基于组播的消息传送系统没有集中式服务器。一些服务器功能(持久性,事务和安全性)作为一个客户端的本地部分嵌入进来。而此时消息路由则利用IP组播协议委托给网络层。  IP组播允许应用程序加入到一个或多个IP组播组之中。分布式体系结构不需要用于消息路由的服务器,网络会自动地处理路由。然而每个客户端仍然需要具有像服务器那样的其他功能。

JMS消息传送模型
JMS支持两种传送模型: 点对点模型(p2p)和发布/订阅模型(Pub/Sub)

消息传送客户端成为JMS客户端,而消息传送系统则为JMS提供者。
一个JMS应用程序由多个JMS客户端和一个JMS提供者组成。
生产消息的JMS客户端称为消息生产者,而接受消息的JMS客户端称为消息消费者

点对点模型:
点对点模型允许JMS客户端通过队列这个虚拟管道进行同步和异步发送、接收信息。点对点中,生产者称为发送者,消费者称为接受者。
特点:队列中的信息只能被一个客户端接收。
发布/订阅模型:
消息会被发布到名为主题的虚拟通道中。消息生产者称为发布者,消息消费者称为订阅者。
特点:主题中的消息可被多个订阅者所接收。 (广播消息)

JMS公共核心API

JMS点对点核心API

JMS发布/订阅API接口


从这些图片其实便可以看出对象产生之间的关联关系,接下来会由代码来表现出来。

待续。。。

0 0
原创粉丝点击