Syntaxhighlighter V Нужен совет по повышению производительности Google? - PullRequest
3 голосов
/ 19 февраля 2012

Уже существует несколько веток о том, как выполнить предварительную проверку кода при его отображении в блоге: Как использовать предварительную проверку с блоггером / blogspot? и Какие шаги мне нужно предпринять, чтобы добавить хорошийформатирование кода Java в моем блоге blogdzher / blogspot? .

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

Сжатие

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

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

Время проверки сервера Это немного нелегкий тест.Когда я пингую 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

Когда я пингую 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, где я не думаю, что syntaxhighlighter.

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

Здесь есть разница подходов.Syntaxhighlighter довольно модульный с различными файлами JavaScript для разных языков.Google; s prettify, используя один больший файл JavaScript.Поэтому возможно иметь меньший размер файла с подсветкой синтаксиса, если вы включаете фрагменты из разных языков, у вас, конечно, будет больше запросов http.

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

Спасибо.

1 Ответ

5 голосов
/ 19 февраля 2012

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

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

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

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

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

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

"Google умнее вас"

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

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

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

  3. Некоторыенеизвестная причина, что это за мной

Проще говоря, братан, верь в googs

...