中间件(英语:Middleware)是介于应用系统和系统软件之间的一类软件,它包括一组服务,以便于软件各部件之间的交互。也就是说,关于中间件,我们可以理解为:是一类能够为一种或多种应用程序合作互通、资源共享,同时还能够为该应用程序提供相关的服务的软件。(注意:中间件是一类软件的总称,不是单独的一个软件)正常情况下一次web的访问顺序是:web浏览器—服务器(硬件)—web容器—web应用服务器—数据库服务器。*需要注意的是,中间件是一类软件的总称,不是单独的一个软件。1、事务式中间件
事务式中间件又称事务处理管理程序,是当下用的最广泛的中间件之一,它具有可靠性高、极强的扩展性等特点,主要应用于电信、金融、飞机订票系统、证券等拥有大量客户的领域。过程式中间件又称远程过程调用中间件。过程式中间件有较好的异构支持能力,简单易用,但由于客户和服务器之间采用访问连接,所以在易剪裁性和容错方面有一定的局限性。面向消息的中间件,简称为消息中间件,是一类以消息为载体进行通信的中间件,利用高效可靠的消息机制来实现不同应用间大量的数据交换。消息中间件的非直接连接,支持多种通信规程,达到多个系统之间的数据的共享和同步。面向对象中间件又称分布对象中间件,是分布式计算技术和面向对象技术发展的结合,简称对象中间件。分布对象模型是面向对象模型在分布异构环境下的自然拓广。Web应用服务器是Web服务器和应用服务器相结合的产物,受到了广大用户的欢迎,是中间件市场上竞争的热点,J2EE架构是应用服务器方面的主流标准。新的应用需求、新的技术创新、新的应用领域促成了新的中间件产品的出现。如,ASAAC在研究标准航空电子体系结构时提出的通用系统管理GSM,属于典型的嵌入式航电系统的中间件,互联网云技术的发展云计算中间件、物流网的中间件等随着应用市场的需求应运而生。1、事务处理中间件——Hadoop
Hadoop 实现了分布式计算中的基础算法(如一致算法、选举算法、故障检测、快照等),同时为用户提供了编程和命令接口。
Qpid 是 Apache 开发的一款面向对象的消息中间件,Qpid 提供了很多额外的 HA 特性,非常适于集群环境下的消息通信。
3、面向对象中间件——ICE
ICE 作为一种新型的面向对象中间件,目前并未得到广泛地应用。然而它在架构上为应用开发提供的种种好处,如面向对象的语义、支持同步和异步的消息传递、支持多个接口、机器、语言、操作系统无关性、线程支持、位置和服务器的透明性、高度的安全性、内建的恒久机制以及开放的源码等等,它有着非常强大的技术优势。在构建三层分布式系统方面, ICE 中间件技术有着良好的发展前景。
3、Web服务器中间件——TOMCATTomcat 服务器是一个免费的开放源代码的Web 应用服务器,其工作流程如下图所示:
注:内容源于网络,本号仅作整合与学习交流,如有侵权,请联系删除