我是否应该将haml或erb或erubis用于潜在的高流量网站?

47 ruby haml eruby ruby-on-rails erb

我最近一直在和Haml一起玩,真的很喜欢结果代码给我看的方式......开发人员.我也不太担心设计师能够消费或改变它......我们是一个小团队.

也就是说,开始研究一个我们认为会产生相当多流量的项目(谁没有?).我担心有一些我不知道haml的事情.有没有什么可以做的哈哈不能?随着项目的发展,haml会产生负面影响吗?还有其他事情需要考虑吗?

最后...... Haml如何与erubis进行速度比较?我看到它现在应该胜过erb和eruby ......

谢谢!

cas*_*sey 45

哈姆尔岩石.我没有看到任何最近的性能数字,但这些天它非常接近erb.我认为如果你打开丑陋的模式(这可以防止漂亮的缩进)它可能比erb更快我们每天使用Haml进行280万次网页浏览.

在Haml源代码树中检查了一个基准测试程序:http: //github.com/nex3/haml/tree/master/test

2009年11月更新

Nathan(Haml的主要开发者)在他的博客上发布了一些Haml 2.2基准测试.您可以在那里看到确切的数字,但简而言之:

  • 正常(漂亮打印)模式=比ERB慢2.8倍
  • 丑陋的模式(没有添加漂亮的标签)=等于ERB

您可以通过放入Haml::Template::options[:ugly] = true初始化程序或环境文件来启用丑陋模式.请注意,丑陋的模式并不是那么难看 - 生成的HTML实际上比ERB更漂亮 - 它只是没有很好地缩进.

  • 没有必要在初始化程序中为生产设置"丑陋"模式,因为HAML默认在生产中启用此模式. (11认同)

mis*_*lav 27

如果你使用Rails,Haml和erubis之间的性能差异可以忽略不计:无论如何,模板在第一次命中后被编译和缓存.将此与片段和页面缓存相结合,您可以放心,视图不是应用程序的性能瓶颈.

你应该问自己的问题是:你喜欢写汉谟吗?它会让你更有效率吗?然后你可以更轻松地决定.


Evg*_*eny 11

我喜欢HAML,因为它是轻松编写结构化HTML的好工具,通常它只是一种使用的快乐.但它与根据网站可能拥有的流量选择工具几乎没有关系.

如果您担心流量,则应该担心正确使用缓存.然后,您需要应用一般Web应用程序性能的原则 - 结果是您将对页面加载有超级敏捷的响应.这是一个高流量网站真正需要的.

可以在此处找到一些演示如何提高网站性能的演示文稿:

我知道如何正确使用rails缓存的最佳位置是:


Ken*_*ric 1

我个人会向我们推荐预编译模板中的 erubis。

特别是在不需要动态模板的情况下。那么你最大的减慢将受到 ruby​​ 解析 ruby​​ 的速度的限制。

我可能会设置一个小型 cron 作业,仅监视更改的源模板并在更改时自动编译它们,您可以在不使用时将其关闭。

编译一次,使用多次。

哦,如果你真的很关心速度,Tenjin 可能也值得一看(与 erubis 是同一作者)

http://www.kuwata-lab.com/tenjin/rbtenjin-examples.html