Ezra Zygmuntowicz,EngineYard的创始人,Merb的开发者,在RailsConf 2008上展示了其最新的项目——Vertebra。在Ezra的blog上可以浏览到本次展示的幻灯片。
我们就Vertebra和相关的计划对Ezra进行了访问。
Vertebra是一个规模相当大的项目,下一代云计算平台是对其最好的描述。它基于Erlang/Ruby构建,并由Ejabberd和XMPP所围绕。Vertebra既可以用于云自动化,也可以用于分布式实时应用开发。Vertebra的全部思路是让云计算民主化,抽象出云计算的接口API,并使得人们可以利用多个云提供商控制投入产出比。对于商业集成项目,它也有巨大的潜在市场。如果你有一些老旧的服务需要集成到一个新架构中,你只需要写一个简单的代理,这个代理可以让你的老旧服务连接到Vertebra消息总线上,这使得它可以通过一个标准的途径被消息总线上的任何消息寻址到。
Vertebra 自身是新平台的“脊柱”。我们正通过它自动化管理很多很多服务器,然而它对于在实时网络上的应用开发也产生了深远的影响。从根本上说,它是一个集成系统,任何带有XMPP库的语言只要实现了协议,就可以加入XMPP云计算成为一个由机器和服务构成的大型组织的一部分。
因此Vertebra 将会带有在云中自动化部署应用和虚拟主机的工具。但是它可以作为消息后端或者分布式计算系统运行在Web应用的后端,为诸如map/reduce之类的大计算量任务提供强劲的运算能力。它可以实现基于最小负载结点的调度。比如你的Web应用获取了一个包含图像处理的请求,而你拥有20台后端的集群可以用于图像处理。当你从Web应用上获取了请求以后,你可以向Vertebra请求一个最小负载的结点来服务这个特定请求,Vertebra会返回一个最小负载结点的列表,以便你根据这个列表或者其他更多的因素进行调度。
我们对Ruby–Erlang的组合也很感兴趣,想知道它们是如何协同工作的。
[..] 系统的核心由Erlang编写,EngineYard最近雇佣了两名Erlang的牛人来开发该系统。安全/发现机制、状态机工作流系统和分布式键-值存储系统都是由Erlang来编写的。而用来编写代理的框架则是由ruby编写的,实际的代理也是由ruby开发的。
然而,Vertebra作为独立系统的集成,只要实现了我们的协议,任何语言都很容易地可以成为XMPP云的一部分。
那么这些技术将于何时发布,基于何种授权?
我很高兴的宣布我已经获得了批准,将基于GPL授权以开放源代码的形式完整的发布Vertebra。我们也将对Vertebra提供付费支持,并且将托管Jabber/Erlang项目作为一项服务。
我还不能给出一个确切的发布日期,因为它依然在锻造之中。我们还需要确定我们协议的几个方面,并编写XEP jabber标准文档以使得我们的协议可以被识别成官方XEP。当然我们想要尽快完成,因为Vertebra如此高瞻远瞩,我等不及要看到其他人会用它来做什么。
在今年夏天,我们就能确定协议并完善文档,并将其展示出来。
我认为Web 3.0将是实时万维网的时代。XMPP将会在这场变革中扮演重要的角色,Vertebra将会成为一个构建和整合众多独立服务的强大平台。
阅读(268) | 评论(0) | 转发(0) |