Ruby on Rails团队正忙于采用将 Rails 推升至新的高度。Rack 的实现方式使得开发者可以在自己的应用中使用许多现成的中间件,而这种特性使得 Rails 团队开发 Metal 成为可能。Metal 是通用 Rack 中间件的包装,放置在 Rails 请求之前,并且可以访问 Rails 的会话。对于那些要求运行速度非常快,需要每秒处理成百上千个请求的应用来说,Metal 简直就是量身定做的一般。
David Heinemeier Hansson在Ruby on Rails 的官方博客上正式宣布引入 Rails Metal,并举例说明了其适用范围:
Jesse Newland 也发表了一篇名为Rails Metal:借 Rails 之力的微框架的博文,其中写到:
Jesse 提供了 Rails Metal 的“hello word”的例子,并与普通的 Rails 控制器做了比较:
普通的 Rails 控制器:
这两段代码迥异,在一个简单的基准测试上的结果是:Metal 比老版本的 controller 快 25 倍。
InfoQ 采访了 Rails 核心团队成员、Rails Metal 的开发者Joshua Peek,了解到了一些这个前景一片光明的新兴技术的细节。
当被问道 Rails Metal 是什么时,Joshua 回答说:
哪些类型的问题适合使用 Rail Metal 来解决?
Rails Metal 是一种新技术,并不是人人都适用,那么 Metal 对于一般的 Rails 开发者来说有什么价值呢?
Metal 似乎是用到了最新的 Rack 实现最本质的功能,但是实际上,Rails 引入 Metal 的目的却并不在此,就此 Josh 解释说:
有意思的是,人们在看到时,可能会拿它和 Metal 做比较,而事实上两者迥然不同。
我们已经听过很多微框架及其适用范围了。Jesse Newland 把 Metal 和其他的“微框架”相提并论。我们询问了 Joshua,Metal 是否会造成其他的微框架的需求降低:
最后,开发者如何才能获取到 Metal?
Rails Metal 的发布已经引起了广泛的关注,它给需要速度的 Rails 应用带来了好消息。更多关于 Rails Metal 的信息,请访问Ruby on Rails 官方博客以及GitHub 代码库,你可以从 Github 库中获取 Rails。
查看英文原文: Ruby on Rails gets down to the Metal