BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Rails 1.2性能不如1.1?

| 作者 Sebastien Auvray 关注 0 他的粉丝 ,译者 Jason lai 关注 0 他的粉丝 发布于 2007年4月10日. 估计阅读时间: 2 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

Stefan Kaes自2005年加入Rails核心开发团队,并撰写了InfoQ 2006年最受欢迎的文章《Rails常见性能问题一览》。他的Rails性能测试工具Railsbench刚刚发布了0.9.2版本。Railsbench是一个Ruby和Shell的集合,可以帮助我们轻而易举地测试Rails应用的原始性能。目前对HTTP POST进行基准测试的功能已经得到支持,并有一些新特性加入,这些特性将影响到Railsbench的benchmarks.yml配置文件的格式,以及对PNG图片文件的生成。

Stefan拿着新版本现炒现卖,对Rails 1.1-stable和1.2-stable进行性能比较。测试套件涵盖简单渲染(Simple Rendering)、Action缓存(Action Cached)和Session创建(Session Creation)的方面,套件运行时使用了pstore、ActiveRecordStore和SqlSesionStore三种Session配置方案。

Stefan的测试结果显示,1.2-stable比1.1性能降低20%。他发表了一份完整报告,其中的评论和建议转载如下:

  • 先前关于Rails 1.2性能只及1.1一半的报告是对Rails性能的心理恐惧战术(译者按:原文是FUD,是恐惧(Fear)、不确定(Uncertainty)和疑虑(Doubt)的缩写,原指垄断巨头对于弱小竞争者的一种竞争策略。Stefan Kaes在此使用这个说法的原因是Alrond之前写的一篇文章,关于6个领先的动态语言Web框架的性能测评,结论之一是Rails 1.2只及1.1性能的一半。值得注意的是,Alrond对Web框架的偏好似乎是Django。)
  • Action缓存方面值得引起一定注意
  • 绝对不要选择pstore做为Session容器
  • 由于缓慢的GC和Ruby解析器的大量额外性能开支,使用当前的解析器要避免性能下降似乎可能不大。使用YARV可能会带来改观。

这个问起看来还是存在:Rails核心团队是否在Rails 1.2中拿新特性牺牲了性能?下一个稳定发布版的重心是否会放在性能方面?

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT