首页 > 编程知识 正文

主流的中间件有哪些,什么是中间件,它有什么作用

时间:2023-05-06 16:47:08 阅读:38072 作者:4275

一、中间件是什么? 中间件(英语: Middleware )喜悦的笑容是连接在系统软件和用户APP应用之间的软件,以便于软件的各个部分之间的交流。 特别是APP应用软件是系统软件的集中逻辑的独立系统软件或服务程序,分布式APP应用利用该软件在不同技术之间共享资源。 中间件在客户端服务器的操作系统、网络和数据库上管理计算资源和网络通信。 其总体作用是提供一个运行和开发位于其上层的APP应用程序软件的环境,使用户能够灵活、高效地开发和集成复杂的APP应用程序软件。

即,对于中间件,可以理解为能够与一个或多个APP应用协作来相互操作,在共享资源的同时,提供与该APP应用相关的服务的软件。 中间件是软件而不是软件的总称。 中间件不仅可以互连,还可以实现APP应用程序之间的互操作。

中间件映像

中间件的特点:

满足大量APP应用的需要

在多个硬件和操作系统平台上运行;

支持分布式计算,并在网络、硬件和操作系统平台之间提供透明的APP应用程序或服务交互;

支持标准协议

支持标准接口。

作者:进行调查

链接: https://www.zhi Hu.com/question/19730582/answer/899159964

来源:知乎

版权归作者所有。 商业转载请联系作者取得许可。 非商业转载请注明出处。

中间件是与操作系统和数据库一起构成基础软件三大支柱,应用于分布式系统的基础软件,位于应用与操作系统、数据库之间,是上层APP应用软件开发、运行集成的平台中间件解决了异构网络环境下软件互连和互操作等共性问题,提供了标准接口、协议,为APP应用之间的资源共享提供了可复用的“标准品”。

中间件可以分为基础中间件、集成中间件和行业领域的APP应用平台。 其中,基础中间件是构建分布式APP应用的基础,也是APP应用服务器、消息中间件、事务中间件等集成中间件和行业领域APP应用平台的基础。

这三种基本中间件分别是交易中间件、消息中间件和APP应用程序服务器中间件,其中包括:

交易中间件是专门针对联机业务处理系统而设计的是所有中间件类型中理论成熟、功能和性能都有明确定义的中间件产品。 在线业务处理系统需要处理操作系统、文件系统、数据通信、数据库管理、APP应用软件等大量的并发过程,通过交易中间件,开发在线业务处理系统交易中间件主要应用于金融、财税、运输、电力、电信等行业,如银行业务系统、电信计费系统等。

消息队列(Message Quequing)是在消息传输过程中保存消息的容器,消息中间件即为消息队列的承载形式消息是在两台计算机之间传输的数据单元,消息队列在将消息从源中继到目标时充当中间人,主要目的是提供路由和保证消息的传递如果发送消息时收件人不可用,则消息队列会一直保留消息直到成功传递消息,主要解决传统结构的耦合性问题、系统异步性问题、减少大数据量并发等。

消息队列中有许多模型,经常使用ActiveMQ、Rabbit MQ、RocketMQ和Kafk a。 由于消息队列使用消息连接APP应用程序,因此这些消息通过消息代理服务器(如Rabbit MQ )在APP应用程序之间路由。

APP应用程序服务器中间件位于您的浏览器和数据库之间,为APP应用程序提供业务逻辑代码。 APP应用服务器通过组件的APP应用程序接口向客户端程序发布业务APP应用程序逻辑,同时为APP应用程序提供执行平台和系统服务,并管理数据库的范围。 针对高端需求,APP应用服务器提供了高可用性监控、群集、负载平衡、冗馀和高性能分布式APP应用服务集成以及复杂的数据库访问支持等功能。 目前,市场上的APP应用服务器平台包括J2EE、WebLogic、Glassfish、JBoss企业APP应用平台、Apache Tomcat和Apache Geronimo等。

中间件技术发展的初衷是以适应网络技术应用的复杂性和跨平台特性为基础的,是软件产业发展过程中自然产生的。

二、分 类

)1)事务性中间件

事务中间件,也称为事务管理器程序,是当前应用最广泛的中间件之一,主要功能是在线事务所需的通信、并发访问控制、事务控制、资源管理和安全事务中间件支持同时访问大量客户流程,具有非常高的可扩展性。 办公中间件具有可靠、极强的可扩展性等特点,主要应用于电信、金融、飞机订票系统、证券等拥有众多客户的领域。

)2)工艺式中间件

过程式中间件也称为远程过程调用中间件。 进程中间件一般在逻辑上分为两部分。 是顾客和服务器。 客户和服务器是逻辑概念,可以在同一台计算机上运行,也可以在不同的计算机上运行。 此外,客户和服务器所基于的操作系统也可能不同。 客户端和服务器之间的通信可以使用同步通信,也可以使用线性程序异步调用。 因此,虽然过程中间件具有异构支持能力和易用性,但由于客户和服务器之间采用了访问连接,其可截断性和容错性受到限制。

/p>

(3)面向消息的中间件

面向消息的中间件,简称为消息中间件,是一类以消息为载体进行通信的中间件,利用高效可靠的消息机制来实现不同应用间大量的数据交换。按其通信模型的不同,消息中间件的通信模型有两类:消息队列和消息传递。通过这两种消息模型,不同应用之间的通信和网络的复杂性脱离,摆脱对不同通信协议的依赖,可以在复杂的网络环境中高可靠、高效率的实现安全的异步通信。消息中间件的非直接连接,支持多种通信规程,达到多个系统之间的数据的共享和同步。面向消息中间件是一类常用的中间件。 [3]

(4)面向对象中间件

面向对象中间件又称分布对象中间件,是分布式计算技术和面向对象技术发展的结合,简称对象中间件。分布对象模型是面向对象模型在分布异构环境下的自然拓广。面向对象中间件给应用层提供过重不同形式的通信服务,通过这些服务,上层应用对事务处理、分布式数据访问,对象管理等处理更简单易行。OMG组织是分布对象技术标准化方面的国际组织,它制定出了CORBA等标准。 [3]

(5)Web应用服务器

Web应用服务器是Web服务器和应用服务器相结合的产物。应用服务器中间件可以说是软件的基础设施,利用构件化技术将应用软件整合到一个确定的协同工作环境中,并提供多种通信机制,事务处理能力,及应用的开发管理功能。由于直接支持三层或多层应用系统的开发,应用服务器受到了广大用户的欢迎,是目前中间件市场上竞争的热点,J2EE架构是目前应用服务器方面的主流标准。

(6)其他

新的应用需求、新的技术创新、新的应用领域促成了新的中间件产品的出现。如,ASAAC在研究标准航空电子体系结构时提出的通用系统管理GSM,属于典型的嵌入式航电系统的中间件,互联网云技术的发展云计算中间件、物流网的中间件等随着应用市场的需求应运而生。

三、常用的中间件有哪些?

因为中间件属于一类软件的统称,所以具体来说常用中间件有哪些不同的服务商有不同的定义,我们以阿里云中间件为例来说明一下,点击下面按钮进入阿里云中间件页面:

阿里云中间件页面

我们可以看到下列中间件产品:

企业级分布式应用服务EDAS

消息队列MQ

消息队列MQ for IoT

消息服务MNS

消息队列Kafka

性能测试PTS

业务实时监控服务ARMS

在产品选购页面上,首先我们可以看到有尝鲜体验的三款中间件:

 

下面还有一组热卖的中间件产品:

 

中间件产品

这里面每款中间件产品的功能和面向的用户都是不同的,阿里云方面有非常详细的说明,大家可以阅读相关介绍,本站有时间也会单独介绍某个具体的中间件产品。

 

四、相关产品举例 Apusic MQ

该产品是国产中间件厂商金蝶的旗舰产品之一,金蝶中间件目前拥有 Apusic J2EE应用服务器、 Apusic MQ消息中间件和 Apusic Studio开发平台,组成了轻量级风格的企业基础架构软件平台金蝶 Apuisc Platform,其具备技术模型简单化、开发过程一体化、业务组件实用化的显著特性,产品间无缝集成。

BEA Weblogic

Weblogic系列的最大特点是平台开放。 Weblogic和其他第三方开发工具的结合也非常好,常见的组合就是 Jbuilder Weblogic的开发环境。

BEA Weblogic integration是 BEA Weblogic Enterprise Platform的一个组件,它提供了企业应用集成所需的各种功能,可用开发新应用,将新应用与现有系统集成,简化业务流程以及通过门户网关扩展业务基础结构。 BEA Weblogic Integration为快速交付业务集成、简化生产管理提供了通用的开发环境,整合了业务集成领域各种不同的部件,其中包括ERP、CRM遗留应用、业务用户、供应链和业务伙伴。

Oracle fusion

甲骨文公司的 Oracle融合中间件 Oracle fusion middleware是一个全面的中间件产品系列,由甲骨文公司的SOA和中间件产品组成,其中包括: Oracle应用服务器10g、 Oracle应用服务器产品和可选配件、 Oracle数据平台、 Oracle内容服务10g、 Oracle实时协作10g和 Oracle统一传信。这一经过验证的中间件产品系列可帮助各企业提高公共运作的效率及敏捷性, Oracle fusion middleware还为客户的面向服务应用提供贯穿整个生命周期的全面支持,由于其独特的插作式架构,这个系列产品具有与企业现有T基础设施的互操作性。

SA PXI

SA PXI应用集成套件作为 SA NEtweaver中间件产品的一部分,目的是为non-SAP系统提供一个其他管理信息系统与SAP系统进行数据和流程交互的平台,因为SAP定位于ERP系统,关注点在企业的人、财、物,但对于企业其他的专业系统,SAP的功能无法覆盖和取代,因此,必须有这样的“接口”来实现相互之间的数据和业务交换。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。