背景
jade 语法很棒,但我想看看它是如何影响性能的。
所以我创建了一个单页应用程序并使用 apache bench 来比较它的吞吐量,使用 Jade 来呈现页面与使用内存中的字符串。没有变量,所以这只是一个纯粹的学术比较。
内存中的字符串使整个应用程序在本地速度提高了一倍以上,考虑到生产模式下的 Jade 应该从内存缓存中渲染,这似乎很重要。
我在生产模式下使用 Node 0.8 和 express 的 2.5.11 版本, View 缓存选项显式设置为 true
。
apache bench 结果: https://dl.dropbox.com/u/3737990/jade/jade.png https://dl.dropbox.com/u/3737990/jade/memory.png
最佳答案
正如 Harry 所提到的,将模板引擎的性能与发送字符串的性能进行比较是没有意义的,因为它们解决了两种不同的需求。这有点像比较两辆车的 MPG,除了一辆车你只是把它放到空档让它滚下山。
相反,compare templating engines 更有帮助。 ,因为它们都是达到相同目的的手段(动态呈现的 HTML)。
在这里我们看到 Jade 是最慢的模板语言。造成这种情况的原因可能有很多因素,但核心问题是 Jade wasn't designed for speed .如果您需要极高的性能,doT专为速度而设计。
关于performance - 在express中使用nodejs可以采取哪些措施来提高jade模板渲染性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343302/