javascript - 需要 Syntaxhighlighter V Google 的美化性能建议吗?

标签 javascript syntax-highlighting google-code

关于如何在 blogspot 上显示代码时美化代码,已经有几个主题:How to use prettify with blogger/blogspot?What are the steps I need to take to add nice java code formatting to my blogger/blogspot blog? .

我试过谷歌的美化http://code.google.com/p/google-code-prettify/和语法高亮器 http://alexgorbatchev.com/SyntaxHighlighter/ .两者都很好。但是,我感兴趣的是两者中哪一个具有更好的性能 - 这就是该线程的不同之处。

压缩

YSlow 告诉我两者都没有压缩发送到我的浏览器。但是,我并没有自己托管该网站,而是使用 google 的 blogspot 进行托管。所以,我不认为我能在这里做很多事情。正确吗?

缓存 Google 的 prettify 和 syntaxhighlighter 都使用 javascript 文件和样式表。他们分别将它们托管在谷歌服务器和亚马逊服务器上。如果我自己托管文件,我可以使用 Apache Http 服务器并在 HTTP 响应上设置缓存 header ,这样返回的用户就不会继续下载它们。如果我不托管自己并使用 blogspot 的免费托管,我无能为力,对吗?

服务器 ping 时间 这是一个有点点头的测试。当我 ping google 的 prettify 时,我得到:

Pinging googlecode.l.google.com [209.85.143.82] with 32 bytes of data:
Reply from 209.85.143.82: bytes=32 time=5ms TTL=53
Reply from 209.85.143.82: bytes=32 time=4ms TTL=53
Reply from 209.85.143.82: bytes=32 time=4ms TTL=53
Reply from 209.85.143.82: bytes=32 time=5ms TTL=53

当我 ping syntaxhighlighter 时:

Pinging www.alexgorbatchev.com [69.163.149.228] with 32 bytes of data:
Reply from 69.163.149.228: bytes=32 time=148ms TTL=47
Reply from 69.163.149.228: bytes=32 time=146ms TTL=47
Reply from 69.163.149.228: bytes=32 time=146ms TTL=47
Reply from 69.163.149.228: bytes=32 time=146ms TTL=47

看起来谷歌赢得了这场比赛。可能使用了 CDN,但我认为没有使用 syntaxhighlighter。

更少的 Http 请求

这里有不同的方法。 Syntaxhighlighter 是非常模块化的,具有针对不同语言的不同 javascript 文件。谷歌使用一个更大的 javascript 文件进行美化。 因此,如果您包含来自各种语言的代码片段,那么可以使用语法高亮显示更小的文件大小,您当然会有更多的 http 请求。

这就是背景。问题是关于使用 syntaxhiglighter 或 google 的 prettify 的性能提示是什么?您如何才能使速度更快或确定一个比另一个更快?

谢谢。

最佳答案

出于以下几个原因,我认为您应该选择谷歌(由他们托管):

  1. 如果代码由 google url 托管,如果他们之前访问过的网站(不是您的网站)使用了相同的 url,浏览器就有机会从缓存中读取。这意味着他们甚至可以在访问您的网站之前从缓存中读取数据。

  2. Google 有一个 CDN,这意味着他们可以从离请求者最近的服务器提供文件。例如。您的服务器可能托管在美国,但如果澳大利亚人访问您的网站,他仍然必须去美国获取您的文件,...谷歌不是这种情况。

  3. 它对您来说更便宜、更少麻烦。

  4. 更少的 HTTP 请求是浏览器性能提升的无名英雄

就谷歌而言,不压缩文件。在编码或做任何与谷歌相关的事情时,我有一个一般规则:

“谷歌比你聪明”

如果我认为 google 没有发送压缩文件,则可能是:

  1. 我错了,谷歌正在向我发送压缩文件

  2. 最好不要发送压缩文件

  3. 一些我无法理解的未知原因

兄弟,保持简单,相信谷歌

关于javascript - 需要 Syntaxhighlighter V Google 的美化性能建议吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9349396/

相关文章:

javascript - node.js - XMLHttpRequest,获取header信息

javascript - 正则表达式解析@references,包括引号?

javascript - Notepad++ 中更好的 Javascript 语法高亮显示

ruby-on-rails - HAML Markdown 过滤器中的语法突出显示

Google 代码值错误上的 Mercurial 推送错误

svn - 在 googlecode 中创建私有(private)存储库

javascript - Drupal 8 的 Jquery .once() 问题

javascript - 使用javascript用表行数据填充表单

visual-studio-2008 - Visual Studio - 在脚本中突出显示标记语法 [类型 :txt/html]

visual-studio - 谷歌代码SVN使用建议