ICE 入门(2)

原创 2015年07月10日 17:50:05

Ice 对象(Ice Objects)
Ice 对象是一种概念性的实体(或称抽象)。Ice 对象具有以下特征:
• Ice 对象是本地或远地的地址空间中、能响应客户请求的实体。
• 一个Ice 对象可在单个或多个服务器中实例化(后者是冗余方式)。如果
某个对象同时有多个实例,它仍是一个Ice 对象。
• 每个Ice对象都有一个或多个接口。 一个接口是一个对象所支持的一系列
有名称的操作。客户通过调用操作来发出请求。
• 一个操作有零个或更多参数,以及一个返回值。参数和返回值具有明确
的类型。参数是有名称的,并且有方向:in 参数由客户初始化,并传给
服务器; out 参数由服务器初始化,并传给客户(返回值只是一种特
殊的out 参数)。

• 一个Ice 对象具有一个特殊的接口,称为它的主接口。此外, Ice 对象还
可以提供零个或更多其他接口,称为facets (面)。客户可以在某个对
象的各个facets 之间进行挑选,选出它们想要使用的接口。
• 每个Ice 对象都有一个唯一的对象标识(object identity)。对象标识是用
于把一个对象与其他所有对象区别开来的标识值。Ice 对象模型假定对
象标识是全局唯一的,也就是说,在一个Ice 通信域中,不会有两个对
象具有相同的对象标识。

代理(Proxies)
要想与某个Ice 对象联系,客户必须持有这个对象的代理1。 代理是客户
的地址空间中的一种制品(artifact);对客户而言,代理就是Ice 对象的
代表(该对象可能在远地)。一个代理充当的是一个Ice 对象的本地大使:
当客户调用代理上的操作时, Ice run time 会:
1. 定位Ice 对象
2. 如果Ice 对象的服务器没有运行,就激活它
3. 在服务器中激活Ice 对象
4. 把所有in 参数传送给Ice 对象
5. 等待操作完成
6. 把所有out 参数及返回值返回给客户(或在发生错误的情况下抛出异
常)
Slice:
每个Ice 对象都有一个接口,该接口具有一些操作。接
口、操作,还有在客户及服务器间交换的数据的类型,都是用Slice 语言定
义的。Slice 允许你以一种独立于特定编程语言(比如C++ 或Java)的方
式定义客户-服务器的合约。 Slice 定义由一个编译器编译成特定编程语言
的API,也就是说,与你所定义的接口和类型对应的那一部分API,会由生
成的代码组成。

相关文章推荐

ice入门例子2

  • 2012年03月01日 19:45
  • 2.9MB
  • 下载

Java-ICE入门教程(2-2:Java实例)

1.安装ICE 下载地址:https://zeroc.com/download.html 需要配置环境变量: classPath添加: %ICE_HOME%/lib/db.jar;%ICE_HOME%...

Java-ICE入门教程(2-1:ICE基础知识)

1、ICE是什么?  ICE是ZEROC的开源通信协议产品,它的全称是:The Internet Communications Engine,翻译为中文是互联网通信引擎,是一个面向对象的中间件,使我们...

ICE入门 文章集

  • 2016年01月11日 11:30
  • 1.9MB
  • 下载

Ice入门完整实例

  • 2014年04月22日 23:48
  • 1.42MB
  • 下载

ICE入门之hello world

本文主要讲解ICE入门第一个hello world程序编写,内容来源于ICE官方文档。

很不多的ICE架构入门学习例子-ping程序

ICE架构基础demo学习

ice入门

什么是ICE (Internet Communications Engine)      首先,ICE是一个中间件(如果不懂什么是中间件,请先G一下),该中间件的目的是为上层应用提供高效的网络通信。...
  • zhu2695
  • zhu2695
  • 2016年05月24日 23:58
  • 879

ICE入门代码

  • 2015年05月27日 14:31
  • 2.81MB
  • 下载

HelloWorld_ICE分布式应用开发入门

  • 2012年02月22日 09:39
  • 437KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ICE 入门(2)
举报原因:
原因补充:

(最多只允许输入30个字)