消息传送机制与JMS

异构集成是消息传送机制在其中起关键作用的一个领域。越来越多的公司都正面临着在企业内部、跨企业集成异构系统和应用程序的问题。在一家公司或部门内部,遇到由JavaEE、Microsoft公司的.NET、Tuxedo、Oryes、甚至是大型机上的CICS所组成的多种技术和平台,这种情况毫不足奇。

消息传送机制还具有异步处理请求的能力,它为系统体系架构师和开发者提供的解决方案,能够减轻或消除系统瓶颈,并提高最终用户的生产率和系统的整体可伸缩性。由于消息传送机制能够实现组件之间的高度去耦,因此,使用这种机制的系统还具有高度的体系结构灵活性和敏捷性。

应用程序到应用程序(application-to-application)类型的消息传送系统,在用于业务系统时,通常称为企业消息传送系统,或者称为面向消息的中间件(message-Oriented Middleware,MOM)。企业消息传送系统允许两个或更多的应用程序以消息的形式来交换信息。

通过使用面向消息的中间件,消息通过网络从一个应用程序传送到另一个应用程序之中。企业中间件产品能够确保消息在应用程序中间的正确分发。此外,对于那些需要可靠地大量交换消息的企业,这些产品通常为它们提供了容错和负载均衡、可伸缩性和事务性的支持。

在所有的现代企业消息传送系统中,应用程序通过虚拟通道来交换信息,这些虚拟通道称为目的地。发送一条消息时,是发送到一个目的地(也就是队列或主题),而不是发送到某个特定的应用程序。在这个目的地中,订阅或注册对该目的地感兴趣的所有应用程序都可以接收这条消息。这样一来,接收消息的应用程序和发送消息的应用程序就能够实现去耦。

所有的企业消息传送系统厂商都为应用程序开发者提供了一个API,用于发送和接收消息。JMS是一种与厂商无关的Java API,它可以供多个不同的企业消息厂商使用。JMS与JDBC非常相似,应用程序开发者能够重用同样的API来访问多种不同的系统。如果厂商提供了JMS兼容的服务提供程序,我们就可以使用JMS API来向其发送消息,或者从该厂商产品处接收消息。举例来说,你要是使用IBM的WebSphere MQ,你就可以使用相同的JMS API来发送使用SonicMQ的消息。

注:java7中好像JMS已到2.0版本。JMS 2.0是Java EE 7平台的一部分,但是也可以作为单独的Java SE平台使用。

你可能感兴趣的:(jms)