分享
 
 
 

中间件的分类

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

中间件的分类

思索

中间件的产品种类很多,根据中间件在系统中所起的作用和采用的技术不同,大致划分为以下五种:

数据库中间件(DM,Database Middleware)

数据库中间件在所有的中间件中是应用最广泛,技术最成熟的一种。一个最典型的例子就是ODBC,ODBC是一种基于数据库的中间件标准,它允许应用程序和本地或者异地的数据库进行通信,并提供了一系列的应用程序接口API,当然,在多数情况下这些API都是隐藏在开发工具中,不被程序员直接使用。有过实际编程经验的朋友都知道,在写数据库程序的时候,只要在ODBC中添加一个数据源,然后就可以直接在自己的应用程序中使用这个数据源,而不用关系目标数据库的实现原理、实现机制,甚至不必了解ODBC向应用程序提供了哪些应用程序接口API。

不过在数据库中间件处理模型中,数据库是信息存贮的核心单元,中间件完成通信的功能,这种方式虽然是灵活的,但是并不适合于一些要求高性能处理的场合,因为它需要大量的数据通信,而且当网络发生故障时,系统将不能正常工作。所谓有得必有失,就是这个道理,系统的灵活性提高是以处理性能的降低为代价的。

远程过程调用中间件(RPC, Remote Procedure Call)

远程过程调用是另外一种形式的中间件,它在客户/服务器计算方面,比数据库中间件又迈进了一步。它已经存在了相当长的时间,而且沿用了大多数程序员都非常熟悉的编程模式-程序员就像调用本地过程一样在程序中调用远程过程。启动远程过程的运行,然后将运行结果返回给本地程序。不但如此,远过程调用还可以将程序的控制传递到远端的服务器当中去。

RPC的灵活特性使得它有比数据库中间件更广泛的应用,它可以应用在更复杂的客户/服务器计算环境中。远过程调用的灵活性还体现在它的跨平台性上面,它不仅可以调用远端的子程序,而且这种调用是可以跨不同操作系统平台的,而程序员在编程时并不需要考虑这些细节。

RPC也有一些缺点,主要是因为RPC一般用于应用程序之间的通信,而且采用的是同步通信方式,因此对于比较小型的简单应用还是比较适合的,因为这些应用通常不要求异步通信方式。但是对于一些大型的应用,这种方式就不是很适合了,因为此时程序员需要考虑网络或者系统故障,处理并发操作、缓冲、流量控制以及进程同步等一系列复杂问题。

面向消息中间件(MOM,Message Oriented Middleware)

消息中间件的优点在于能够在客户和服务器之间提供同步和异步的连接,并且在任何时刻都可以将消息进行传送或者存储转发,这也是它比远程过程调用更进一步的原因。另外消息中间件不会占用大量的网络带宽,可以跟踪事务,并且通过将事务存储到磁盘上实现网络故障时系统的恢复。当然和远程过程调用相比,消息中间件不支持程序控制的传递,不过这种功能和它的优势比起来却是无关紧要的。

消息中间件适用于需要在多个进程之间进行可靠的数据传送的分布式环境。

基于对象请求代理(ORB,Object Request Broker)的中间件

对象请求代理是近年来才发展起来的一项新技术,它可以看作和编程语言无关的面向对象的RPC应用,被视为从面向对象过渡到分布式计算的强大推动力量。从管理和封装的模式上看,对象请求代理和远过程调用有些累死,不过对象请求代理可以包含比远过程调用和消息中间件更复杂的信息,并且可以适用于非结构化的或者非关系型的数据。

目前有两种对象请求代理的标准,分别是CORBA和DCOM,这两种标准是相互竞争的,而且两者之间有很大的区别,这在一定程度上阻碍了对象请求代理中间件的标准化进程。

事务处理中间件(TPM,Transaction Processing Monitor)

事务处理中间件是一种复杂的中间件产品,是针对复杂环境下分布式应用的速度和可靠性要求而实现的。它给程序员提供了一个事务处理的API,程序员可以使用这个程序接口编写高速而且可靠的分布式应用程序-基于事务处理的应用程序。

事务处理中间件向用户提供一系列的服务,如应用管理,管理控制,已经应用程序间的消息传递等。常见的功能包括全局事务协调、事务的分布式两段提交、资源管理器支持、故障恢复、高可靠性、网络负载平衡等等

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有