about 12 years ago

Rails 3.2 四天前 Release 了。這次主要的改進幾乎都在效能部分。

最大的改版應該屬於 Route recognition 這部分。原本這部分是由 rack-mount 擔綱,Aaron Patterson (a.k.a. @tenderlove) 將之抽換成他自己寫的 Gem : jounery。速度快了非常多倍。

但相關的原理並沒有 jounery 的 About 頁面並沒有被詳加敘述,

SYNOPSIS: Too complex right now. :(

不過根據有限的線索,我還是從 @tenderlove 的 slideshare 上挖出來了。

jounery 的原理是用 FSM ( Fininte State Machine ) 實做的。有興趣的可以從投影片裡面繼續挖。

其他豆知識:

ActiveRecord 背後的 SQL 生成引擎 Arel 背後原理是用 Relational Algerbra 生成的,可以生成非常複雜的 SQL Query 但又兼顧到效能問題。

← 農家樂 (Agricola) - 創業者都應該玩過的一套 Lean Startup 桌遊 Rails 的 cycle helper 以及 CSS 中的 nth-child →
 
comments powered by Disqus