2012-02-19 2 views
3

Уже существует несколько потоков о том, как преффицировать код при его отображении на 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?.Syntaxhighlighter V Необходимы советы по улучшению производительности Google?

Я пробовал google prettify http://code.google.com/p/google-code-prettify/ и syntaxhighlighter http://alexgorbatchev.com/SyntaxHighlighter/. Оба хороши. Тем не менее, меня интересует, что имеет лучшую производительность обоих - вот где эта нить отличается.

Compression

YSlow не говорит мне ни посылается прессуют в браузере. Тем не менее, я не размещаю сайт самостоятельно, я использую блогов для google для хостинга. Итак, я не думаю, что здесь можно многое сделать. Верный?

Кэш Как префикс Google, так и синтаксический гиперссылка используют файлы javascript и таблицы стилей. Они размещают их на сервере google и сервере amazon соответственно. если бы я сам принимал файлы, я мог бы использовать Apache Http Server и устанавливать заголовки кешей на HTTP-ответы, чтобы возвращающиеся пользователи не продолжали их загружать. Если я не принимаю себя и использую бесплатный хостинг blogspot, я ничего не могу сделать, правильно?

Время сервера ping Это немного интересный тест. Когда я пинг Google, приукрасить, я получаю:

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 

Когда я пинг 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 

Так выглядит как Google, выигравшим этот. Вероятно, с помощью CDN, где я не думаю, что синтаксический гиперссылка.

Меньшее Http запросы

Там разница подходов здесь. Syntaxhighlighter довольно модульный с различными файлами javascript для разных языков. Google, prettify, используя один большой файл javascript. Таким образом, чтобы иметь меньший размер файла с подсветкой синтаксиса, если вы включаете фрагменты с разных языков, у вас, конечно же, будет больше HTTP-запросов.

Так что это фон. Вопрос в том, каков ваш совет по эффективности использования syntaxhiglighter или google's prettify? Как вы могли бы пойти или быстрее, или убедиться, что один быстрее, чем другой?

Спасибо.

ответ

5

Я думаю, что вы должны идти с Google (размещенным ими) по нескольким причинам:

  1. Если код размещаются в URL Google, браузер имеет возможность чтения из кэша, если веб-сайт, который они посетили раньше (а не ваш), использовал тот же URL-адрес. Это означает, что они могут читать из кеша, прежде чем они даже посещают ваш сайт.

  2. У Google есть CDN, это означает, что они могут предоставить файл с сервера, который ближе всего к запрашивающему. например. ваш сервер может быть размещен в США, но если австралиец отправился на ваш сайт, он все равно должен отправиться в Америку, чтобы получить ваши файлы, ... не с Google.

  3. Его дешевле и меньше хлопот для вас.

  4. Меньше запросов HTTP является незамеченный герой браузера Палатки повышающей

С точки зрения Google не сжимать файлы. У меня есть общее правило, при кодировании или делать что-либо Google, связанные:

«Google является умнее, чем вы»

Если я думаю, что Google не отправляет сжатые файлы, его либо:

  1. Я неправильные и Google посылает меня сжатые файлы

  2. лучше не посылать сжатые файлы

  3. Некоторые УНК Nown причина того, что это за меня

Держите это простой братан, доверие в googs

+1

слишком предвзятым ответ ... Этот парень должен быть хардкор Google вентилятор. Amazon также имеет cdn и отличную инфраструктуру облаков. Каковы ваши шансы против Amazon здесь? – WarFox

+0

Я абсолютно ничего не знаю об Amazon, я австралиец ... здесь его просто онлайн-магазин. И пусть я фанат или нет, это не меняет того факта, что у Google есть самые умные инженеры в мире. –

+1

Расширьте свой друг знаний. Amazon имеет одну из лучших облачных инфраструктур. Посмотрите веб-службы Amazon http://aws.amazon.com/. И как ответ на вопрос, производительность javascript зависит от времени загрузки сценария, поэтому лучше всего идти с более быстрым сценарием загрузки. Но поскольку syntaxhighlighter очень популярен, большинство пользователей будут иметь скрипт в кеше браузера, поэтому в большинстве случаев он не требует HTTP-запроса – WarFox

Смежные вопросы