`
bluky999
  • 浏览: 722921 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

了解 ICE和ACE

    博客分类:
  • Java
阅读更多

1 ice   [其实,可以跟thrift比,有木有 ]

 

Internet Communications Engine  

 

http://www.zeroc.com/ 当前ice版本 3.4.2

 

Zeroc推出的一种分布式的面向对象中间件,解决分布式的异构计算。可以用C++, Java, python, php, ruby, c# 等进行分布式的交互计算。

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

 

 

ice特点

- 面向对象的语义

- 支持同步和异步

- 硬件架构无关,操作系统无关,编程语言无关

- 完全线程化,api线程安全

- 使用tcp,ip,udp

- 安全,ssl支持

- 内建机制支持持久化对象,支持Berkeley DB

 

ice 使用

- slice :接口定义 - 中间数据结构

- leader/follow 线程池

- epoll select 模型

- 内置互斥 与 同步

 

ice基于gpl开源,同时发布付费版本。

 

 

ps:

- 你看,slice那种方式跟thrift几乎一样一样的, slice2py ,thrift2java ,不就一回事儿么 !

- 有很多人在使用ice,就举个很简单的例子,500wan,在线彩票投注平台,就用这个;网上有他们公司的ppt呢还;另外这个团队还使用python,他们的前端以php和python为主。

 

 

2 ace

 

Adaptive Communication Environment

 

Adaptive Communication Environment(自适配通信环境),简称ACE。为一个以C++的Template技术所做成的开放源代码的可跨平台的网络应用程序的程序库套件。它提供了socket/threading/memory management等多种系统调用的面对对象的wrapper,使C++通信软件开发更加简单。

 

 

 

 

附:

1 常见语言无关的跨平台通信中间件/方式:

- ace + tao

-  coroa

- webservice : soap协议 

 

 

最后,笔者想推荐一下 thrift : http://thrift.apache.org/

 

Thrift is a software framework for scalable cross-language services development. It combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml.

Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008.

0
1
分享到:
评论
2 楼 bluky999 2011-11-23  
服务端开发时经常会用到的其他C++库:
1 BOOST ,准标准库,你懂的
2 mysql++ ,已逐步取代其他CppApi
1 楼 bluky999 2011-08-30  
google的 protocol buffers 也是类似产品,不过据tim yang等人的测试,google的速度更快表现更优。  http://timyang.net/programming/thrift-protocol-buffers-java-howto/


protocol buffers目前主要支持java,python, c++ 。

相关推荐

    分布式开发 ICE最新版本

    7. **ACE依赖**:ICE的实现依赖于ACE(Adaptive Communication Environment)库,这是一个高度可移植的C++框架,提供了网络通信、线程管理、定时器和事件处理等功能,为ICE提供了强大的底层支持。 在ICE 3.3.1这个...

    ice-3.4.1英文介绍

    通过提供的文档和手册,开发者可以了解如何使用Ice进行分布式程序设计。比如参考书籍《Distributed Computing with Ice》,该书由ZeroC公司出版,详细介绍了使用Ice进行分布式编程的方法。这本书是ZeroC公司的官方...

    chatboard:具有视频、实时编码和同步布局的实时协作室

    信令是WebRTC过程中至关重要的一步,因为它用于交换SDP(会话描述协议)和ICE(交互式连接建立)候选等信息,这些信息用于建立和维护数据通道。在Chatboard的案例中,开发者可能需要搭建一个自定义的信令服务器,...

    英文俚语俗语谚语与格言大全.doc

    【英文俚语俗语谚语与格言大全】 英语俚语是日常口语中常见的非...以上是一部分英语俚语和谚语,了解并适当运用它们可以使你的英语表达更加地道,增加交流的趣味性。不过,要记得在合适的情境中使用,以免引起误解。

    常用英语俚语大集合.doc

    【描述】:这个文档收集了大量的日常英语俚语,这些俚语是英语口语中常用的表达方式,能够帮助读者更好地理解和运用非正式场合的英语交流。 【标签】:“文档” 【内容】:这份文档列举了多种常见的英语俚语,包括...

Global site tag (gtag.js) - Google Analytics