中间件有何作用
发布网友
发布时间:2022-04-19 12:09
我来回答
共2个回答
热心网友
时间:2022-05-02 05:23
(1)通信支持
中间件为其所支持的应用软件提供平台化的运行环境,该环境屏蔽底层通信之间的接口差异,实现互操作,所以通信支持是中间件一个最基本的功能。早期应用与分布式的中间件交互主要的通信方式为远程调用和消息两种方式。
通信模块中,远程调用通过网络进行通信,通过支持数据的转换和通信服务,从而屏蔽不同的操作系统和网络协议。远程调用是提供给予过程的服务访问,为上层系统只提供非常简单的编程接口或过程调用模型。消息提供异步交互的机制。
(2)应用支持
中间件的目的就是服务上层应用,提供应用层不同服务之间的互操作机制。它为上层应用开发提供统一的平台和运行环境,并封装不同操作系统提供API接口,向应用提供统一的标准接口,使应用的开发和运行与操作系统无关,实现其独立性。
中间件松耦合的结构,标准的封装服务和接口,有效的互操作机制,从而给应用结构化和开发方法提供有力的支持。
(3)公共服务
公共服务是对应用软件*性功能或约束的提取。将这些共性的功能或者约束分类实现,并支持复用,作为公共服务,提供给应用程序使用。通过提供标准、统一的公共服务,可减少上层应用的开发工作量,缩短应用的开发时间,并有助于提供应用软件的质量。
扩展资料:
中间件的特点:
1、应用支撑
中间件的最终目的是解决上层应用系统的问题,而且也是软件技术发展到今天对应用软件提供最完善彻底的解决方案。
现代面向服务的中间件在4个方面形成了很高地应用支撑能力,分别为软件的结构、模型、开发方法以及互操作,而要最终解决软件的灵活应变问题、效率问题、质量问题、互操作问题这四大问题,需要在软件技术的内在结构、架构层面进行思考。
2、耦合关系
中间件基于SOA架构,在松耦和解耦过程中演变成了境界。而传统软件将软件之中核心三部分数据转换、网络连接和业务逻辑所有的都耦合在一个整体,产生为铁板一块的软件,然后动一点而动全身,这样的软件就很难适应市场的需求。
而分布式对象技术可以分离连接逻辑,消息中间件异步处理连接逻辑,形成了很大的灵活性。中间件分离分布式对象与消息代理的数据转换。SOA架构以服务的封装,解耦实现了业务逻辑、数据转换与网络连接等。
3、互操作性
传统中间件在软件的互操作方面,通过标准化的API完成了同类系统之间的调用互操作,但是连接互操作离不开原有的特定的访问协议,比如CORBA用于的IIOP,JAVA用于的RMI等。
而SOA以支持Internet、标准化及操作系统无关的SOAP协议完成了连接互操作。并且服务的封装一般使用XML协议,它有自定义及自解析的特性,因此基于SOA的中间件能够完成语义互操作。
参考资料来源:百度百科-中间件
热心网友
时间:2022-05-02 06:41
中间件
中间件
(Middleware)
定义:
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。
中间件特点:
满足大量应用的需要 ;
运行于多种硬件和OS平台 ;
支持分布式计算,提供跨网络、硬件和OS平台的透明性的应用或服务的交互功能 ;
支持标准的协议 ;
支持标准的接口。
中间件可以应用于以下情形,如连接公司 LAN和早期系统、交换两个邮件系统间的信息、支持 web 客户机与数据库服务器交换信息等。通用中间件类型包括:
·企业服务总线(ESB : Enterprise Service Bus):ESB 是一种开放的、基于标准的分布式同步或异步信息传递中间件。通过 XML、Web 服务接口以及标准化基于规则的路由选择文档等支持,ESB 为企业应用程序提供安全互用性。
·事务处理(TP:Transaction Processing)监控器:为发生在对象间的事务处理提供监控功能,以确保操作成功实现。
·分布式计算环境(DCE:Distributed Computing Environment):指创建运行在不同平台上的分布式应用程序所需的一组技术服务。
·远程过程调用(RPC:Remote Procere Call):指客户机向服务器发送关于运行某程序的请求时所需的标准。
·对象请求代理(ORB:Object Request Broker):为用户提供与其他分布式网络环境中对象通信的接口。
·数据库访问中间件(Database Access Middleware):支持用户访问各种操作系统或应用程序中的数据库。SQL 是该类中间件的其中一种。
·信息传递(Message Passing):电子邮件系统是该类中间件的其中一种。
·基于 XML 的中间件(XML-Based Middleware):XML 允许开发人员为实现在 Internet 中交换结构化信息而创建文档。
最早具有中间件技术思想及功能的软件是IBM的CICS,但由于CICS不是分布式环境的产物,因此人们一般把Tuxedo作为第一个严格意义上的中间件产品。Tuxedo是1984年在当时属于AT&&T的贝尔实验室开发完成的,但由于分布式处理当时并没有在商业应用上获得像今天一样的成功,Tuxedo在很长一段时期里只是实验室产品,后来被Novell收购,在经过Novell并不成功的商业推广之后,1995年被现在的BEA公司收购。尽管中间件的概念很早就已经产生,但中间件技术的广泛运用却是在最近10年之中。BEA公司1995年成立后收购Tuxedo才成为一个真正的中间件厂商,IBM的中间件MQSeries也是90年代的产品,其它许多中间件产品也都是最近几年才成熟起来。国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时期。东方通科技早在1992年就开始中间件的研究与开发,1993年推出第一个产品TongLINK/Q。而中科院软件所、国防科技大学等研究机构也对中间件技术进行了同步研究。可以说,在中间件领域,国内的起步时间并不比国外晚多少。