在周五的 RailsConf 会议上,GemStone 的 Avi Bryant 和 Bob Walker 透漏了 MagLev 项目的计划。该项目将把 GemStone 的分步式对象技术运行在 Ruby on Rails 上。尽管 MagLev VM 只完成了一部分,但其性能已经超过了 MRI 1.8。
MagLev 是一个 Ruby VM,它起源于运行 Smalltalk 的 GemStone S64 VM ,并扩展了一些特殊的字节代码来兼容 Ruby。GemStone 的 Smalltalk VM 已经在实时财经市场和全球运输行业使用了 20 多年。它是个成熟、快速、稳定的分布式事务型数据仓库,能够存储 1T 个对象或者 17PB(千兆字节)极具价值的信息。MagLev 项目的目标是把这个分布式对象技术带进Ruby on Rails 世界。
Avi Bryant 是 Dabble DB 和 SeaSide 的 核心成员。他演示了在 Ruby 上运行 MagLev 的分布式对象技术。他先在一个 Ruby VM 中打开一个 irb 会话,然后只需实例化一个全局对象,就能把对象数据共享给另一个 VM 中的 irb 会话。接着,Avi 演示了 BEGIN、COMMIT 和 ABORT 三个关键词,它们都使用了完全事务性的且符合 ACID 的并发策略。他还用同样的原理访问了持久性数据。在本质上,MagLev 不仅担任了 VM 的 角色,还担任了缓存和持久存储层的角色。
GemStone 公司的 Bob Walker 是 MagLev 项目的经理。他介绍了项目的进展。到今天为止,Bob Walker 的团队已经让 MagLev 在 Ruby Shootout Benchmarks 测试中的 36 项指标上远远地超过了 MRI 1.8。他们打算用 Rubinius 项目的 Ruby Specs 来验证它的兼容性。他们还有三个月来实施这项工作。项目的一部分将会是开源的,但是用 C 写的核心 VM 则暂时不会开源。
GemStone 仍在审议对 MagLev 的定价模型。Bob Walker 声称将会有一个免费版。GemStone 的管理层考虑可能会根据存储量或者事务的数量来采用二到三级的价格模型。GemStone 还建了一个项目主页,承诺在上面随时更新项目的进展信息。
阅读InfoQ对MagLev 的项目经理Bob Walker 的独家采访。
查看原文: GemStone Reveals Plans for MagLev Ruby VM at RailsConf 2008
评论