面向对象的分布式系统中间件—ICE
Posted 数据轩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象的分布式系统中间件—ICE相关的知识,希望对你有一定的参考价值。
一
ICE介绍
Ice(Internet Communications Engine)是ZeroC公司的杰作,继承了CORBA的血统,是新一代的面向对象的分布式系统中间件。Ice是RPC通讯领域里最稳定、强大、高性能、跨平台、多语言支持的老牌开源中间件,特别适合于当前互联网领域中一个平台存在多种开发语言编程,以及网站和app应用并存的复杂大型项目。Ice通过与编程语言无关的中立语言Slice(Specification Language fro Ice)来描述服务的接口,从而达到对象接口与其实现想分离的目的。目前Ice平台支持客户端API的语言有C++、.NET、Java、Python、Object-C、Ruby、php、javascript等。在服务器可以使用C、.NET、Java、Python等来开发。
二
关键特性
1. 支持多语言之间的RPC互通。
2. 高性能的RPC调用。
3. 支持传统的RPC调用、异步调用、One-Way调用、批量发起请求,支持TCP通信、UDP通信等。
4. 多平台支持。
5. 不断更新,与时俱进。
三
通讯原理
1. 开发者通过slice定义接口规范Printer.ice。
2. 客户端和服务端分别通过对应的转换工具生成各自语言的接口。
3. 客户端和服务器分别用各自的语言根据统一的接口实现具体逻辑代码。至于调用等底层实现由ICE帮我们完成,大大简化、节省了开发的时间。
四
结束语
这里只是简单的对ICE进行介绍,还有很多东西没有提到,如ICE的语法规则、ICE的版本控制(Facet)、持久化 (Feeze)、服务装箱管理 (ICEBox)、文件分发(ICEPatch2)、发布/订阅 服务(ICEStorm)、网络拓扑负载解决方案--终极武器(ICEGrid)、提供使用安全传输入协议SSL的插件(IceSSL)、轻量级的ICE应用防火墙其解决方案(Galcier2),这些留待大家后面去学习了。
END
数据轩
科技 | 应用 | 趋势
www.jx-lab.com
以上是关于面向对象的分布式系统中间件—ICE的主要内容,如果未能解决你的问题,请参考以下文章
[.net 面向对象程序设计进阶] (25) 团队开发利器分布式版本控制系统Git (上)
[.net 面向对象程序设计进阶] (26) 团队开发利器分布式版本控制系统Git——图形化Git客户端工具TortoiseGit