InfoQ

新闻

Eclipse Ganymede:深入ECF(Eclipse Communication Framework)

作者 Alex Blewitt 译者 宋玮 发布于 2008年6月25日 上午12时25分

社区
Java
主题
标签
Eclipse

作为预定6月25日发布的Eclipse Ganymede的一部分,Infoq将推出一系列Eclipse子项目的相关报道。今天,我们将探讨的子项目是Eclipse通讯框架(Eclipse Communication Framework——ECF)。Infoq采访了EFC的项目领导人及Composent咨询公司的主要负责人——Scott Lewis,以了解更多关于ECF及其功用的信息。

Lewis把ECF描述为给开发者提供的两个特性:

  • 给使用Eclipse的团队提供了实时通讯和协作特性,比如P2P(peer-to-peer)文件共享、远程打开Eclipse视图、屏幕截图共享、以及实时共享编辑。
  • 一套通讯API和框架,建立在已有协议(如Google Talk、XMPP、SSH、HTTP/HTTPS、Rendevous、IRC及其它协议)之上,使得开发者可以给自己的基于Equinox的插件增加通讯和消息传递功能,或者自定义及扩展ECF应用。其API支持P2P、客户-服务器和多点消息传递,而且API主要集中在特定类型的通讯上,如P2P文件传递、presence/IM/chat、动态服务发现、远程OSGi服务、消息传递信道等等。

Ganymede的新特性包括抓取屏幕快照并发送给联系人,以及实时共享编辑,它允许文本编辑器(Java、XML等)通过ECF与其它用户共享。本地开发者编辑器内容的变化会同步给远程开发者,反之亦然。

Lewis解释了ECF API和与不同通信服务“提供者”个体之间的关系:

ECF拥有创建API的通用方法,这些API的焦点在于满足高层次编程的需要(比如,传递文件、发现服务或发送文本信息等等),而不是完成这些功能所需的协议(bittorrent、skype、xmpp等等)。打个比方,我们已经创建了一个文件传输API,它曝露了发送、接收以及浏览远程文件系统的功能。bittorrent、XMPP、http、ftp和scp/ssh也实现了同一可扩展API。每个实现都被称作“提供者”,这些提供者知道相关协议的细节。

用来为新版Eclipse Ganymede安装/更新提供文件传输服务的ECF文件传输API被称之为p2(InfoQ报道过)。这样,除了http/https协议之外,文件传输协议也被用到了Eclipse安装/更新上。

可是,ECF不只是文件传输。通用的发现API(Discovery API)在如SLP(通过jSLP)或Zeroconf(通过JmDNS)这样的发现协议之上提供了一个抽象。另外,ECF还配备了R-OSGi,将其作为允许远程通讯(同步或异步)的提供者的一部分,并且参与到了OSGi企业专家组(OSGi Enterprise Expert Group)中。

要获取更多的信息,可以看一下ECF webinar或者听一下podcast,后者是通过集成在Eclipse中的SkyPE和Jingle录制下来的。作为一个社区驱动的项目,ECF一直在寻找贡献者

最后,当问到ECF如何集成到E4中,或者会受到E4怎样的影响时,Lewis说道:

至于实时共享编辑工作,我们已经开始着手将分布式和进程间通讯(ECF)与建模模型(例如,EMF、DOM或其它模型)进行集成。真正发生在实时共享编辑上的问题是文档模型被复制到了多个系统上,修改是实时、分布式(通过ECF)进行的。只要你分发了一个模型,允许多个人编辑/操作这个模型,你就必须处理同步复制数据的难题。如果数据偏离了同步,那么在这个时候,对用户来说软件是不能有效工作的。

我们期望ECF能够/将能够给E4的一部分内容提供帮助,E4正在关注在多个进程间分发和操纵模型,比如一个Web客户端访问服务器上的Eclipse E4。我们很希望ECF和作为其基础的异步消息传递结构能够在这些领域帮上E4很大的忙。ECF提供了一套轻量级的API,可以用来构建分布式应用并保持分布式状态同步。

查看英文原文:Eclipse Ganymede: An in-depth look at ECF (Eclipse Communication Framework)

令人神往啊 发表人 cao yunfei 发表于 2008年6月26日 上午1时6分
IDEA早有了 发表人 卫翔 崔 发表于 2008年6月26日 上午4时6分
lotus 发表人 ray Li 发表于 2008年7月1日 上午10时34分
  1. 返回顶部

    令人神往啊

    2008年6月26日 上午1时6分 发表人 cao yunfei

    以后程序员要是还用MSN,QQ聊天你都不好意思和人打招呼! 大家都用Eclipse聊天了!

  2. 返回顶部

    IDEA早有了

    2008年6月26日 上午4时6分 发表人 卫翔 崔

    这个功能IDEA好象早有了。

  3. 返回顶部

    lotus

    2008年7月1日 上午10时34分 发表人 ray Li

    lotus的团队通信工具Sametime 比较新的版本都已经转到eclipse平台上了

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。