1.什么是ICE?
ICE(internet communications engine)是适用于异种环境的面向对象中间件平台。
那么什么是中间件呢?
比较流行的定义是:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通讯。 从中间件的定义可以看出,中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,定义中特别强调了其网络通讯功能.
2.ICE的一些概念
服务器/客户端(server/client):这个的定义与一般的定义相同,主动的一方被认为是client
ICE对象:跟OOP中的对象类似,不同之处在于,在分布式的环境中,同一个ICE对象在不同的地址空间中都可能存在着.ICE对象也提供了一组接口(facets).ICE对象还有一个特殊的接口:主接口.
代理(proxies):是ICE对象引用,代理是在客户地址空间,客户对ICE对象的操作就是通过代理来进行的.代理封装了完成:ICE对象的寻址(包括服务器的寻址),激活ICE对象,传入参数,等待执行并返回执行结果
servant:在服务器上的执行体,ICE对象对服务器的操作就是通过调用servant.
"最多一次"原则:一次对目的的访问,只会执行一次(并不排除出错重试)
ICE的5个服务
Summary这里介绍了ICE的五个服务
Ice为分布式开发提供了技术完善的客户-服务平台。实际上,现实的应用不仅仅只需要具备远程通讯能力,通常的,还需要随需启动服务,把代理分布到客户端,分发异步事件,配置应用,发布补丁等等。
Ice自带了一些服务,这些服务具备了上面所说的特征和一些其它的特征。这些服务实现以服务器的形式实现并向你的应用提供服务。他们分别是:
1、IcePack
IcePack是Ice的定位服务。当使用间接绑定时,用来将符号化的适配器名称转换为协议-地址对。除了定位服务之外,IcePack还提供了如下的服务:
IcePack允许你注册一个自动启动的服务:即当客户端进行请求时,服务器不需要处于运行状态,只要第一个客户端进行请求时,服务会自动启动。
IcePack支持脚本描述部署,可以轻易的配置包含了若干个服务的复杂的应用
IcePack提供了简单的对象查找服务,允许客户端获取他们感兴趣的对象代理。
2、IceBox
IceBox是一个简单的应用服务器,它可以协调多个应用组件启动和停止。
应用组件可以用动态链接库的形式发布而不是一个进程。这就减轻了系统的负载。例如,你可以在一个JVM中运行若干个应用组件而不是有多个进程,每一个进程都有自己的JVM。
3、IceStorm
IceStorm是一个发布-订阅服务,它减除了客户端和服务器的耦合度。本质上说,IceStorm作为一个事件分发的交换机运行。发布者将事件发给服 务,IceStorm按照顺序将事件传递给订阅者。使用这种方法,一个事件发布者就可以把一个事件发布给多个订阅者。事件按照主题分类,订阅者可以指定他 们感兴趣的主题。只有订阅者感兴趣的主题才会发送给订阅者。服务允许指定服务的质量,从而允许应用在可伸缩性和性能之间进行适当的折中。
如果你需要将信息发布到大量的应用组建,那么IceStorm是一个不错的选择。(一个很典型的例子就是股票报价的应用)。IceStorm减除了信息的 发布者和订阅者之间的耦合,同时也能重新发布已经发布的信息。另外,IceStorm可以作为联合服务运行,即多个服务的实例可以运行在不同的机器上,从 而降低了CPU的负载。
4、IcePatch
IcePatch是一个软件补丁服务。它允许你轻松的把软件的更新发布给客户。客户连接到IcePatch然后请求更新一个特定的应用。服务就自动检查客 户软件的版本然后下载需要更新的组件。而这些下载的组件都是放在一个压缩包里的,从而减少了带宽的占用。软件补丁也可以通过结合Glacier服务发布, 这样可以让只有经过授权的客户才能下载软件更新。
5、Glacier
Glacier是Ice防火墙服务:它允许客户和服务器通过防火墙安全的通讯。客户-服务器的通讯通过使用公钥认证完全加密,并且通讯是双向的。Glacier提供了相互认证和安全的会话管理支持。
分享到:
相关推荐
Zeroc ICE是一个开源的中间件平台,它支持C++、Java、Python、.NET等语言的分布式对象通信。ICE全称Internet Communications Engine,即互联网通信引擎,是一种用于开发分布式计算应用的强大工具。本文档主要围绕ICE...
《冈萨雷斯数字图像处理MATLAB版源码:ICE源码解析》 在计算机科学领域,数字图像处理是一项至关重要的技术,广泛应用于医学影像、遥感、机器视觉等多个领域。MATLAB作为强大的数学计算和数据分析工具,是进行图像...
ICE,全称Interactive Connectivity Establishment,是一种中间件技术,主要用于分布式系统中的对象通信。它由ZeroC公司开发,提供了一种高效、安全且跨平台的通信框架,广泛应用于软件开发,尤其是在需要不同系统间...
Ice-3.4.2安装包是Zeroc公司提供的最新版本的Ice中间件,它是一种高性能、跨平台的通信框架,专为构建分布式应用程序而设计。Ice支持多种编程语言,包括C++、Java、Python、C#等,使得开发者可以方便地在不同语言...
《Ice-3.5.1源码解析与深入理解》 Ice是一款强大的分布式对象中间件,它由ZeroC公司开发,旨在提供一种高效、安全、跨语言的通信机制。Ice-3.5.1是其在201X年发布的一个稳定版本,包含了丰富的功能和改进,对于学习...
ZeroC Ice 3.7 手册 Ice(Internet Communications Engine)是ZeroC公司的杰作,继承了CORBA的血统,是新一代的面向对象的分布式系统中间件。Ice是RPC通讯领域里最稳定、强大、高性能、跨平台、多语言支持的老牌开源...
在Android开发中,ICE(Internet Communication Engine)服务是一种用于设备间通信的技术,它允许设备通过互联网进行实时数据交换。ICE服务通常被用在分布式系统、物联网(IoT)项目或者需要远程控制和监控的应用场景...
在Linux操作系统中,安装ICE(Integration and Communication Environment)包是一个重要的任务,特别是在开发分布式系统或者进行跨平台通信时。ICE是一种高性能、灵活且易于使用的中间件,它允许应用程序通过网络...
《ICE for Windows安装包详解及应用》 ICE(Integration and Communication Engine)是一种高性能、轻量级的中间件,用于构建分布式系统。它提供了一种基于接口的编程模型,支持多种编程语言,包括C++、Java、...
ICE(Internet Communication Engine)框架是一种跨平台的中间件,它提供了分布式系统开发所需的各种服务,如对象间通信、数据序列化、远程调用等。在C++编程环境中,ICE为开发者提供了一套强大的工具和库,使得构建...
### ZeroC Ice 3.7 官方手册知识点解析 #### 一、Ice 手册概览 **1.1 Ice 概述** - **1.1.1 Ice 架构** - **术语(Terminology)**:介绍了与Ice相关的专业术语,帮助读者更好地理解文档中的内容。 - **Slice...
标题:"Ice-3.3.1 ICE" 描述:"ICE最新版官方的学习资料,因为中文基本没有,一起啃吧" 标签:"ICE" 知识点解析: ### Ice:分布式编程框架 Ice,全称为Internet Communications Engine,是ZeroC公司开发的一款...
【Ice-3.4.0中文开发手册1】是一份针对Ice分布式程序设计的详细指南,由ZeroC公司出版,作者包括Michi Henning和Mark Spruiell。该手册介绍了IceStorm的相关内容,这是一个用于管理和构建分布式应用程序的工具。手册...
### 冰山(Iceberg)数据湖技术概览 #### 1.1 冰山(Iceberg)简介 - **背景介绍**: - **开发背景**:为解决数据存储与计算引擎之间的适配问题,Netflix 发起了 Iceberg 项目。 - **发展历程**:Iceberg 在 ...
在电力自动化领域,ICE104规约是一种广泛使用的通信协议,主要用于远程终端单元(RTU)和主站之间的数据交换。ICE104规约是IEC60870-5-104标准的简称,它规定了如何在以太网环境下进行远动通信,包括遥测、遥信、...
ICE-3.7.4 最新安装文件msi文件,windows版 ICE常见报错 Exception in thread Ice.ConnectionRefusedException error = 0 at IceInternal.Network.doFinishConnect(Network.java:417) at IceInternal....
标题 "Ice-3.5.1-el6-x86_64-rpm.tar.gz" 提供的是一个软件分发包的名称,其中包含了 Ice 的3.5.1版本,适用于64位的EL6(Enterprise Linux 6)操作系统。这个压缩包采用tar.gz格式,这是一种在Linux和Unix系统中...
《ice-dubbo-thrift-grpc性能测试对比》 在IT领域,选择合适的RPC(远程过程调用)框架对于系统的性能和可扩展性至关重要。本文主要分析了四种常见的RPC框架——ice、dubbo、thrift和grpc的性能表现,通过一组简化...
《552404 ZeroC Ice权威指南》是一本深度解析ZeroCI框架的专业书籍,旨在为读者提供全面且深入的ICE(Internet Communication Engine)框架使用知识。ICE是一款跨平台的中间件,由ZeroC公司开发,用于构建分布式系统...