Best Practices for Speeding Up Your Web Site / Рекомендации лучших вебоводов для ускорения вашего сайта: Remove Duplicate Scripts / Удаляйте повторяющиеся скрипты
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Дважды включенный в страницу один и тот же JavaScript файл ведет к ухудшению производительности. Это не так необычно, как вы могли бы подумать. Обзор первой десятки североамериканских сайтов показывает, что двое из них содержат повторяющийся скрипт. Два главных фактора, которые ведут к возможности дублирования скриптов на странице, это - размер команды разработчиков и количество скриптов. Когда такое происходит, дублированные скрипты ухудшают производительность, создавая лишние HTTP запросы и тратя впустую процессорное время на выполнение скриптов. Alexasa 12.09.12 в 15:28 |
|
|
Лишние HTTP запросы случаются в IE, но не в Firefox. В IE, если внешний скрипт включается дважды и не кешируется, то он генерирует два HTTP запроса во время загрузки страницы. Даже если скрипт кешируется, дополнительные запросы происходят при перезагрузке страницы пользователем. Alexasa 12.09.12 в 15:31 |
||
|
В дополнение к созданию лишних HTTP запросов, время тратится на выполнение скрипта несколько раз. Этот избыток расчетов происходит как в IE, так и в Firefox, даже если скрипт закеширован. Alexasa 12.09.12 в 15:33 |
||
|
Одним из способов избежать случайного включения одного и того же скрипта является включение управляющего скрипта в вашу шаблонную систему. Стандартным способом включения является использование тега SCRIPT. Alexasa 12.09.12 в 15:35 |
||
|
<script type="text/javascript" src="menu_1.0.17.js"></script> Alexasa 12.09.12 в 15:35 |
||
|
Альтернативой для PHP может быть создание функции insertScript. Alexasa 12.09.12 в 15:37 |
+2 | |
|
<?php insertScript("menu.js") ?> Alexasa 12.09.12 в 15:37 |
||
|
В дополнение к предотвращению включения скрипта несколько раз, эта функция может производить и другие действия со скриптами, такие как проверка зависимостей и добавление номера версии для поддержки отложенного срока истечения. Alexasa 12.09.12 в 15:39 |
