ICE

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
第1行: 第1行:
 
[[Image:ZerocLogo.gif|right]]
 
[[Image:ZerocLogo.gif|right]]
 
Internet Communications Engine
 
Internet Communications Engine
 +
 +
http://www.zeroc.com/ice.html
 
==设计目标==
 
==设计目标==
 
* 提供适用于异种环境的面向对象中间件平台。
 
* 提供适用于异种环境的面向对象中间件平台。
第9行: 第11行:
 
更简单地说, Ice 的设计目标可陈述为:“让我们构建与CORBA 一样强大的中间件平台,而又不去犯CORBA 所犯下的任何错误”。
 
更简单地说, Ice 的设计目标可陈述为:“让我们构建与CORBA 一样强大的中间件平台,而又不去犯CORBA 所犯下的任何错误”。
  
==Ice 服务==
+
==Ice 组成==
 +
===Slice===
 +
The Specification Language for Ice. Slice establishes a contract between clients and servers, and is also used to describe persistent data.
 +
===Slice Compilers===
 +
Slice specifications are compiled into various programming languages. Ice supportsC++, Java, C#, Visual Basic, Python, PHP, and Ruby.
 +
===Ice===
 +
The Ice core library.
 
===IcePack===
 
===IcePack===
 
IcePack 是Ice 的定位服务
 
IcePack 是Ice 的定位服务
第23行: 第31行:
 
===Glacier===
 
===Glacier===
 
Glacier 是Ice 防火墙服务:它能让客户与服务器通过防火墙安全地进行通信,且又不牺牲安全性。 客户-服务器之间的通信数据使用公钥证书进行了完全的加密,并且是双向的。Glacier 支持相互认证,以及安全的会话管理。
 
Glacier 是Ice 防火墙服务:它能让客户与服务器通过防火墙安全地进行通信,且又不牺牲安全性。 客户-服务器之间的通信数据使用公钥证书进行了完全的加密,并且是双向的。Glacier 支持相互认证,以及安全的会话管理。
 
+
===IceGrid===
 +
Ice for Grid Computing
 +
===IceUtil===
 +
A collection of utility functions, such as Unicode handling and thread programming. (C++ only.)
 +
===Freeze===
 +
Freeze provides automatic persistence for Ice servants. With just a few lines of code, an application can incorporate a highly-scalable evictor that efficiently manages persistent objects.
 +
===FreezeScript===
 +
It is common for persistent data types to change, especially in large software projects.
 +
===IceSSL===
 +
A dynamic SSL transport plug-in for the Ice core.
 
==安装==
 
==安装==
 
  set ICE_HOME=<Ice installation root directory>
 
  set ICE_HOME=<Ice installation root directory>
第29行: 第46行:
 
  nmake /f Makefile.mak
 
  nmake /f Makefile.mak
  
 +
==与TAO的比较==
 +
http://www.zeroc.com/performance/
 
==Demo==
 
==Demo==
 
===C++===
 
===C++===
第48行: 第67行:
 
*Ice 分布式程序设计(954页/中文) - http://docs.huihoo.com/ice/ice-1.3.0-cn.pdf
 
*Ice 分布式程序设计(954页/中文) - http://docs.huihoo.com/ice/ice-1.3.0-cn.pdf
 
*Ice Reference Manual 2.0 - http://docs.huihoo.com/ice/2.0.0/manual/index.html
 
*Ice Reference Manual 2.0 - http://docs.huihoo.com/ice/2.0.0/manual/index.html
 
+
==成功应用==
http://www.zeroc.com/ice.html
+
*[http://www.skype.com/ Skype] uses Ice as part of its communications infrastructure.
 +
*HP uses Ice as the communications infrastructure for its [http://www.hp.com/halo/ Halo Collaboration Studio.]
 +
More: http://www.zeroc.com/customers.html
  
 
[[category:Middleware]]
 
[[category:Middleware]]

2007年2月12日 (一) 12:17的版本

ZerocLogo.gif

Internet Communications Engine

http://www.zeroc.com/ice.html

目录

设计目标

  • 提供适用于异种环境的面向对象中间件平台。
  • 提供一组完整的特性,支持广泛的领域中的实际的分布式应用的开发。
  • 避免不必要的复杂性,使平台更易于学习和使用。
  • 提供一种在网络带宽、内存使用和CPU 开销方面都很高效的实现。
  • 提供一种具有内建安全性的实现,使它适用于不安全的公共网络。

更简单地说, Ice 的设计目标可陈述为:“让我们构建与CORBA 一样强大的中间件平台,而又不去犯CORBA 所犯下的任何错误”。

Ice 组成

Slice

The Specification Language for Ice. Slice establishes a contract between clients and servers, and is also used to describe persistent data.

Slice Compilers

Slice specifications are compiled into various programming languages. Ice supportsC++, Java, C#, Visual Basic, Python, PHP, and Ruby.

Ice

The Ice core library.

IcePack

IcePack 是Ice 的定位服务

  • IcePack 允许你注册服务器,进行自动启动:当客户发出请求时,服务器无需在运行, IcePack 会在第一个客户请求到达时,随需启动服务器。
  • IcePack 支持部署描述符(deployment descriptors),能让你轻松地配置含有若干服务器的复杂应用。
  • IcePack 提供了一种简单的对象查找服务,客户可用来获取它们感兴趣的对象的代理。

IceBox

IceBox 是一种简单的应用服务器,可用于协调许多应用组件的启动和停止。

IceStorm

IceStorm 是一种发布-订阅服务,能够解除客户与服务器的耦合。在本质上, IceStorm 充当的是事件分发交换机。

IcePatch

IcePatch 是一种软件更新服务。 你可以用它来轻松地把软件更新分发给客户。客户可以简单地连接到IcePatch,请求获得特定应用的更新。

Glacier

Glacier 是Ice 防火墙服务:它能让客户与服务器通过防火墙安全地进行通信,且又不牺牲安全性。 客户-服务器之间的通信数据使用公钥证书进行了完全的加密,并且是双向的。Glacier 支持相互认证,以及安全的会话管理。

IceGrid

Ice for Grid Computing

IceUtil

A collection of utility functions, such as Unicode handling and thread programming. (C++ only.)

Freeze

Freeze provides automatic persistence for Ice servants. With just a few lines of code, an application can incorporate a highly-scalable evictor that efficiently manages persistent objects.

FreezeScript

It is common for persistent data types to change, especially in large software projects.

IceSSL

A dynamic SSL transport plug-in for the Ice core.

安装

set ICE_HOME=<Ice installation root directory>
set PATH=%ICE_HOME%\bin;%PATH%
nmake /f Makefile.mak

与TAO的比较

http://www.zeroc.com/performance/

Demo

C++

通过 vc6.0 打开 demo.dsw, 编译相关项目,

server.exe
client.exe

Java

export CLASSPATH=classes:$CLASSPATH
java Server
java Client

C#

server.exe
client.exe

Python

python Server.py
python Client.py

文档

成功应用

More: http://www.zeroc.com/customers.html

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱