您的位置:首页 > 其它

Ice读书笔记--中间件概念与Ice综述(一)

2011-08-28 10:49 281 查看
一。中间件

1.简介

简单来说,中间件就是一种独立的系统软件或者某种服务应用程序。中间件处在客户端与服务器端的操作系统之上,主要负责网络资源管理和网络通信。中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能

2.中间件的特性

1)运行在异种环境中,也就是说可以运行在多种硬件和操作系统中;

2)支持分布式应用,提供跨网络,或者操作系统平台的应用或者服务的交互功能;

3)同样也支持一些标准的网络协议和标准的接口;

3. 中间件的分类

1)远程过程调用:server和client可以位于同一台计算机,也可以位于不同的计算机,甚至运行在不同的操作系统之上。

2)面向消息的中间件:MOM指的是利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。程序将消息放入消息队列或从消息队列中取出消息来进行通讯,与此关联的全部活动,比如维护消息队列、维护程序和队列之间的关系、处理网络的重新启动和在网络中移动消息等是MOM的任务,程序不直接与其它程序通话,并且它们不涉及网络通讯的复杂性。

3)对象请求代理(ORB)是对象总线,它在CORBA规范中处于核心地位,定义异构环境下对象透明地发送请求和接收响应的基本机制,是建立对象之间client/server关系的中间件。

4)事务处理监控界于client和server之间,进行事务管理与协调、负载平衡、失败恢复等,以提高系统的整体性能。它可以被看作是事务处理应用程序的“操作系统”。



二。Ice综述

1.Ice架构

1.1)概述

Ice是一种面向对象的中间件平台。Ice应用适合在异种环境中使用:客户和服务器可以用不同的编程语

言编写,可以运行在不同的操作系统后日机器架构上,并且可以使用多种网络技术进行通信。

1.2)术语

1.2.1) 客户与服务器:发出请求的一端称为客户端,提供应用服务的一端称为服务器。

1.2.2)Ice对象

Ice对象是一种概念性的实体(或称抽象)。Ice对象的特性:

-- Ice对象是本地或原地的地址空间中,能响应客户请求的实体。

-- 一个Ice对象可在单个或多个服务器中实例化。如果某个对象有多个实例,它还是Ice对象。

-- 每个Ice对象可在单个或者多个服务器中实例化。

-- 一个操作有零个或者多个参数。以及一个返回值。

-- 每个Ice对象都有一个唯一的对象标识。

1.2.3)代理(Proxies)

要想与某个Ice对象联系,客户必须持有这个对象的代理。代理是客户的地址空间中的一种制品;对

于客户而言,代理就是Ice对象的代表(该对象可能在原地)

当客户调用代理上的操作时,Ice run time会:定位Ice对象--->如果Ice对象的服务器还没运行,就激

活他-->在服务器中激活Ice对象-->等待操作完成-->把所有out参数及返回值返回给客户。

***串化代理:要与某一个对象联系,客户只需要知道这个对象的标识,寻址信息以及对象的类型就

行了。

***直接代理:其内部保存有某个对象的标识,以及它的服务器的运行地址。该地址由两项内容完全

确定:协议标识符(比如TCP或UDP),针对具体协议的地址(比如主机名和端口号)

***间接代理:其内部有某个对象的标识,以及对象适配器名。但间接代理没有包含寻址信息。对象

适配器名会映射到协议-地址对。

1.2.4)servants

客户请求最后必须到达服务器,在其内部执行代码。在服务器提供操作调用的行为的制品称为

servant。实际上。servant就是服务器开发者编写的类的实例。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: