"本文介绍了JMS(Java Messaging Service)的架构和J2EE的基础知识,包括消息生产者、消费者、JMS消息、被管理的JMS对象、命名服务(JNDI)以及JMS支持的两种消息传输模式:点对点(PTP)和发布/订阅(Pub/Sub)。此外,还探讨了传统的客户/服务器架构的缺点以及三层分布式对象架构,如RMI、CORBA和DCOM,以及Web技术对企业计算的影响和N层计算模式的优点。"
在JMS架构中,消息生产者是应用程序中创建和发送消息的组件,可以是各种类型的应用事件。消息消费者则负责接收和处理这些消息。JMS消息是传递信息的载体,可以包含数据、状态信息或Java对象。被管理的JMS对象主要是目的地,它们在应用部署时被创建和初始化,用于存储和转发消息。JNDI(Java Naming and Directory Interface)作为命名服务,帮助生产者和消费者定位消息的目的地。
JMS支持的两种消息传输模式:
1. 点对点(PTP)模式:消息通过队列(Queue)传输,仅有一个接收者。生产者是QueueSender,消费者是QueueReceiver。
2. 发布/订阅(Pub/Sub)模式:消息通过主题(Topic)广播给多个订阅者。发布者是TopicPublisher,消费者是TopicSubscriber。这两种模式分别由JMS的Queue和Topic接口实现,它们都继承自Destination接口。
J2EE应用服务器技术解决了传统“胖”客户端架构的诸多问题,例如维护困难、高昂的更新成本、客户端与数据库紧密绑定、网络性能差以及数据库连接费用高等。随着Web技术的发展,企业计算转向了“瘦”客户端,利用浏览器进行分布式计算,这导致了业务逻辑向服务器端的集中。N层计算模式在这种背景下应运而生,它允许各层独立变化,降低了部署和维护成本,提高了资源的复用性和系统的灵活性。
J2EE中的RMI、CORBA和DCOM等技术提供了分布式对象间的通信能力,尽管各有优缺点,但都促进了服务的远程调用和跨平台交互。随着Web技术的进步,特别是HTTP、HTML和Java平台的标准化,N层计算模式得以进一步发展,增强了系统的可伸缩性和性能。