节点包与浏览器包

时间:2014-03-02 02:39:00

标签: javascript performance node.js

例如,像highlight.js这样的包在节点中工作就像在浏览器中一样。什么是最佳实践/更快/理想?

在这种情况下,highlight.js用颜色方案美化<code>标签。示例:在您使用它的博客中,有两种情况:

  • 获取帖子,向用户显示帖子并让浏览器/客户端版本 美化代码
  • 获取帖子,将内容传递给突出显示 节点功能,并向用户显示整个结果。

我的担忧:

  • 释放服务器压力。之前显示网站,因为它不需要 解析任何数据。
  • 避免浏览器不兼容(不是很重要)。
  • 如果不使用CDN,请保存一些静态请求。也许更快?

我不知道我还缺少什么,或者应该考虑什么。你觉得怎么样?

PD:每天有更多的软件包与浏览器/节点兼容,但我认为这是我能提供的最好的例子。

1 个答案:

答案 0 :(得分:1)

该问题的答案可能有所不同,但我更愿意在客户端进行。以下是客户端路线的一些优缺点:

  • PRO :您提到的那个,服务器负载减少了。请记住,您正在为您的服务器付费而您的客户正在为连接付费(有时比喻,如等待时间)。如果您处理服务器端,则需要支付更多费用;如果您处理客户端,客户支付更多。我会让客户付钱!
  • CON :另一方面,如果您处理服务器端语法突出显示将加载更快,因为您可以处理一次然后缓存所有后续客户端。
  • CON :浏览器不兼容,就像你说的那样。
  • PRO :语义。您可以在原始数据之上进行高估,而不是将原始数据置于<span>之间。想想非JS机器试图处理你的页面。