什么是中间件


一、什么是中间件    
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,
管理计算机资源和网络通讯。
是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。
执行中间件的一个关键途径是信息传递。
通过中间件,应用程序可以工作于多平台或 OS 环境。 中间件是介于操作系统和应用软件之间,为应用软件提供服务功能的软件,有消息中间件,交易中间件,应用服务器......,由于介于两种软件之间,
所以,称中间件
二、为什么要使用中间件?
      具体地说,中间件屏蔽了底层 操作系统的复杂性,使程序开发人员面对一个简单而统一的 开发环境,减少 程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统 软件上的移植而重复工作,从而大大减少了技术上的负担。中间件带给应用系统的,不只是开发的简便、开发周期的缩短,也减少了系统的维护、运行和管理的工作量,还减少了计算机总体费用的投入。
 
三、主要中间件的分类
1.tomcat(apache),weblogic(Oracle),IBM websphare等应用服务器是典型的应用服务器中间件,tomcat做为容器可以运行在不同的硬件和操作系统上。
2.消息中间件适用于需要可靠的数据传送的分布式环境。采用消息中间件机制的系统中,不同的对象之间通过传递消息来激活对方的事件,完成相应的操作。
发送者将消息发送给消息服务器,消息服务器将消息存放在若干队列中,在合适的时候再将消息转发给接收者。
消息中间件能在不同平台之间通信,它常被用来屏蔽掉各种平台及协议之间的特性,实现应用程序之间的协同,其优点在于能够在客户和服务器之间提供同步和异步的连接,并且在任何时刻都可以将消息进行传送或者存储转发,这也是它比远程过程调用更进一步的原因。
Activemq是消息中间件的实现。
3.远程过程调用中间件,比如HESSION. HESSION的序列化可以解耦不同的开发语言,比如客户端使用PHP,服务端使用JAVA,HESSION可以保证二者之间的通信。做到与语言无关。

4.hibernate这样的ormapping工具也是中间件。它是应用程序持久化数据的中间件。它对DB透明

5.Spring可以看做是一个中间件的平台。框架和中间件的一个共同特点就是让用户尽量关注业务逻辑。有些时候二者是一致的。

6.hadoop是分布式存储和计算的框架,由于屏蔽了底层的分布式计算或存储的细节,有人也称为中间件。

7.nosql角色象是组件或规范,有点类似JMS,JNDI这样的规范,相应的实现比如memcached,redis。如果存在一个跨越多个nosql存储的实现,可以称为nosql的中间件。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM