2.2什么是面向消息中间件
面向消息中间件(MOM)为分布式系统提供异步,解耦,稳定,可扩展和安全的行为。MOM在分布式计算领域是一个重要的概念。它允许应用使用代理器API在分布式环境实现各种功能。
总之,MOM的设计原理就是作为消息发送者和接收者的中间人使用。这个中间人提供了一个高级别的解耦。图2.3演示了ActiveMQ作为中间人,不只是可以联系应用和大型机,还可以实现应用间的交互。
在一个较高级别看,消息就是一个商业信息单元,它通过MOM从一个应用发送到另一个应用。应用使用目标(destinations)来发送和接收消息。
消息将被投递到destinations,然后发送给连接或订阅该destinations的接收者。这个机制能够解耦消息的发送者和接收者,因为它们在
发送或接收消息的时候并不需要同时连接ActiveMQ。发送者不了解接收者,接收者也不了解发送者。这个机制就叫做异步消息传送。
MOMs添加了很多原来紧耦合系统不可能实现的特性,例如消息持久化,对于缓慢和不稳定连接的健壮性,复杂消息路由,消息转移等。消息持久化能减轻缓慢或不稳定连接,或者使得接收者接收消息失败时不会影响发送者的状态。复杂的消息路由使很多东西都成为可能,包括单一消息对应多个接收者,通过属性或者内容选择路由等。消息转移允许拥有不同消息格式的两个应用通过自定义的消息格式进行交流。
目前市场上的MOMs提供一系列预制的连接协议。被支持的协议一般有HTTP/S,multicast,SSL。TCP/IP,UDP等。一些提供商甚至提供多种编程语言支持,这大大降低了在不同环境下使用MOMs的难度。ActiveMQ提供上述所有的特性,而且更多。
一般地,MOM会提供一些API来发送,接收消息及和MOM交互。多年来,MOM提供商为它们选择的语言提供专有的API。直到JMS规范到来才改变这种情况。
分享到:
相关推荐
### 消息队列中间件的设计与实现 #### 摘要 本文介绍了一种新型消息队列服务系统的设计与实现方法。该方案解决了现有消息队列服务系统中的一些关键问题,包括消息大小的限制、操作系统兼容性、消息传递可靠性以及...
综上所述,这个开发指南是面向Java开发者,特别是那些希望将华为eSDK UC2.2集成到他们应用中的开发者。通过学习和实践,开发者可以充分利用eSDK UC的REST接口,打造高效、稳定的统一通信解决方案。
- 面向消息中间件(MOM)通过消息传递进行通信。 - 对象请求代理中间件(ORB)支持分布式对象交互。 - 事务处理中间件(TPM)保障交易一致性。 - J2EE中间件,其中EJB是核心组件,提供企业级服务。 1.3 中间件优点 ...
- **消息中间件**:屏蔽平台和协议差异,实现应用程序间的通信。 - **交易中间件**:确保交易完整性和数据一致性。 - **对象中间件**:在异构环境中实现分布对象的集成和重用。 ##### 2.2 中间件的应用 中间件的...
*** Core旨在创建轻量级、模块化和面向服务的应用程序。它与.NET Framework相比,提供了跨平台的能力,这意味着开发者可以在Linux、macOS以及Windows操作系统上构建应用程序。 在文档中提及的内容涵盖了*** Core ...
这些问题主要是由于关系数据库系统和面向对象技术之间存在的不完全匹配造成的。 ##### 3.2 主流技术介绍 在中间件技术领域,Struts和Hibernate是两个非常重要的开源框架,它们分别解决了不同的问题。 - **Struts*...
标题中的"dotnet-sdk-2.2.100-win-x64.rar"指的是微软的.NET Core SDK 2.2.100的Windows x64版本的压缩包。这个SDK是开发人员用来构建、测试和部署基于.NET Core平台的应用程序的工具集。.NET Core是微软推出的一个...
实验涉及到的主要知识点包括RPC中间件、消息中间件、云计算平台的使用,以及基于AWS(Amazon Web Services)和开源JMS(Java Messaging Service)消息中间件的编程。实验提供了三个具体的任务,分别是基于AWS SQS/...
### RTPS规范-v2.2-中文版-pfu.pdf 相关知识点 #### 1. 概述 **实时发布订阅协议(RTPS)**是面向数据分发服务(DDS)的一种通信协议,旨在满足实时系统中对于数据密集型发布订阅模型的需求。RTPS作为DDS的核心...
应用集成实践经验的基础上,抽象归纳出多种数据交换模式、组织 模式、建设模式、管理模式和使用模式,在底层集成了 Tong 系列产品(Tong 数 据集成、服务集成)以及消息中间件产品(TongLINK/Q)构建出的面向最终用 户的...
DDS(Data Distribution Service)是一种面向服务的中间件,广泛应用于实时系统中,尤其在航空航天、汽车工程、智能制造等领域。DDS的核心特性在于其实时数据交换和高效率的发布订阅模型。DDS互操作性规范,如"Real-...
学习如何使用语法(面向设计者)以及如何扩展(面向程序员): 基础: 概述 对于设计者: 语法概述 | 内建标签及过滤器(filters) | 人性化 针对程序员: 模板 API | 自定义标签(tags)和过滤器(filters) 表单 Django...
AgileEAS.NET作为一个面向服务架构(SOA)的中间件系统,其设计考虑到了系统的可扩展性和伸缩性。这意味着平台能够随着业务需求的增长而灵活扩展,例如通过增加服务器资源、负载均衡或采用微服务架构来提高处理能力...
### Weblogic 11g 中间件介绍 #### 一、Weblogic 11g 概述 **1.1 编写目的** 随着金税三期的实施,原有的Weblogic 8.1.4版本已经不能满足当前的技术需求,因此需要全面升级至Weblogic 11g,并统一使用JDK 1.6及...
《AgileEAS.NET SOA中间件数据库设计说明书(SQLite) V5.01》是针对AgileNET开发平台的一款基于SQLite数据库的中间件系统的设计文档。这份文档详细阐述了如何在SOA(Service-Oriented Architecture,面向服务架构)...
- **定义**:ActiveMQ 是一款开源的消息中间件,它遵循 JMS 1.1 和 MQTT 规范,提供了高性能、高可靠性的消息传递服务。 - **特性**:ActiveMQ 支持多种消息传递模式(例如点对点、发布/订阅),并且能够处理持久化...
构件技术是面向对象编程的进一步发展,强调软件的模块化设计和重用。在Sawara框架中,业务逻辑被封装成独立的构件,每个构件负责处理特定的任务或功能。这种设计方式有以下几个显著优点: - **提高代码复用率**:...
JMS(Java Message Service)是Java平台中关于面向消息中间件的API,用于在两台计算机之间传递消息。JMS规范定义了一系列标准接口,以便开发者能够在不同的JMS实现之间进行互换。 ##### 4.1 JMS消息模型 JMS消息...
- **消息代理、面向消息中间件(MOM)、消息队列中间件(MQM)及对象请求代理(ORBs)**:这些是具体的中间件技术,可以用来实现抽象中间件服务。 - **消息格式与协议**:定义了消息的结构和传输方式。 - **消息内容...
IsFrame作为一种面向数据流通功能的信息系统架构中间件,旨在通过解决数据流通和科学架构两个核心问题来优化信息系统的构建与维护。 #### 二、IsFrame概述 ##### 2.1 IsFrame概念 - **定义**:IsFrame(信息系统...