当前位置: 首页 > news >正文

中间件概念和简介

中间件是一种独立的系统软件或服务程序,分布式应 用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之 间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。

什么是中间件

英文释义:

Definition

Middleware is computer software that connects software components and applications. The software consists of a set of enabling services that allow multiple processes running on one or more machines to interact across a network. This technology evolved to provide for interoperability in support of the move to coherent distributed architectures, which are used most often to support and simplify complex, distributed applications. It includes web servers, transaction monitors, and messaging-and-queueing software.

翻译:

中间件是一类连接软件组件和应用的计算机软件,它包括一组服务,以便于运行在一台或多台机器上的多个软件通过网络进行交互。该技术所提供的互操作性,推动了一致分布式体系架构的演进。该架构通常用于支持分布式应用程序并简化其复杂度,它包括web服务器、事务监控器和消息队列软件。

<a href="http://www.lampbo.org/wp-content/uploads/2012/09/middleware.jpg" class="cboxElement" rel="example4" 1839"="" style="text-decoration: initial; color: rgb(1, 150, 227);">中间件

中间件的定义:

中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。

中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

IDC对中间件的定义表明,中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。

中间件的类型

企业服务总线(ESB : Enterprise Service Bus):ESB 是一种开放的、基于标准的分布式同步或异步信息传递中间件。通过 XML、Web Service接口以及标准化基于规则的路由选择文档等支持,ESB 为企业应用程序提供安全互用性。

事务处理(TP:Transaction Processing)监控器:为发生在对象间的事务处理提供监控功能,以确保操作成功实现。

数据库访问中间件(Database Access Middleware):支持用户访问各种操作系统或应用程序中的数据库。SQL 是该类中间件的其中一种。

信息传递(Message Passing):电子邮件系统是该类中间件的其中一种。

基于 XML 的中间件(XML-Based Middleware):XML 允许开发人员为实现在 Internet 中交换结构化信息而创建文档。

分布式计算环境(DCE:Distributed Computing Environment):指创建运行在不同平台上的分布式应用程序所需的一组技术服务。

远程过程调用(RPC:Remote Procedure Call):指客户机向服务器发送关于运行某程序的请求时所需的标准。   ·对象请求代理(ORB:Object Request Broker):为用户提供与其他分布式网络环境中对象通信的接口。

中间件历史

最早具有中间件技术思想及功能的软件是IBM的CICS,但由于CICS不是分布式环境的产物,因此人们一般把Tuxedo作为第一个严格意义上的中间件产品。Tuxedo是1984年在当时属于AT&T的贝尔实验室开发完成的,但由于分布式处理当时并没有在商业应用上获得像今天一样的成功,Tuxedo在很长一段时期里只是实验室产品,后来被Novell收购,在经过Novell并不成功的商业推广之后,1995年被现在的BEA公司收购。尽管中间件的概念很早就已经产生,但中间件技术的广泛运用却是在最近10年之中。BEA公司1995年成立后收购Tuxedo才成为一个真正的中间件厂商,IBM的中间件MQSeries也是90年代的产品,其它许多中间件产品也都是最近几年才成熟起来。国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时期。东方通科技早在1992年就开始中间件的研究与开发,1993年推出第一个产品TongLINK/Q。而中科院软件所、国防科技大学、北京大学等研究机构也对中间件技术进行了同步研究。可以说,在中间件领域,国内的起步时间并不比国外晚多少。

相关文章:

  • 思科CISCO ACL配置详解
  • 三层交换技术原理
  • 如何定位内网arp攻击
  • IPv6简介
  • 什么是MAC地址
  • ARP协议详解
  • iptables防DDOS攻击和CC攻击设置
  • 华为路由器交换机VLAN配置实例
  • Cisco 路由配置语句汇总
  • Apache如何防止DDOS攻击—mod_evasive模块的配置
  • 利用JK连接Apache与Tomcat,实现负载均衡
  • Ubuntu配置和修改IP地址
  • 几个有用的Apache下.htaccess设置
  • Linux查看硬件信息的方法
  • Linux下优化Apache保证web服务器安全
  • JavaScript 如何正确处理 Unicode 编码问题!
  • canvas 高仿 Apple Watch 表盘
  • css属性的继承、初识值、计算值、当前值、应用值
  • ES6之路之模块详解
  • FineReport中如何实现自动滚屏效果
  • Java 实战开发之spring、logback配置及chrome开发神器(六)
  • JavaScript HTML DOM
  • Java编程基础24——递归练习
  • JS基础之数据类型、对象、原型、原型链、继承
  • MySQL数据库运维之数据恢复
  • MySQL主从复制读写分离及奇怪的问题
  • PHP CLI应用的调试原理
  • RxJS 实现摩斯密码(Morse) 【内附脑图】
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • 警报:线上事故之CountDownLatch的威力
  • 首页查询功能的一次实现过程
  • 通信类
  • Spring第一个helloWorld
  • ​520就是要宠粉,你的心头书我买单
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • !!Dom4j 学习笔记
  • #Linux(Source Insight安装及工程建立)
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (五)关系数据库标准语言SQL
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • ..回顾17,展望18
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .Net面试题4
  • .net实现客户区延伸至至非客户区
  • .sh 的运行
  • @GlobalLock注解作用与原理解析