Самое известное исследование на эту тему провел Amazon: компания выяснила, что задержка всего на 0,1 секунды уменьшает выручку на 1%. Небольшие интернет-магазины тоже теряют деньги на «тормозных» сайтах, пусть даже для них 1% от выручки не сотни миллионов долларов в квартал, как у Amazon, а просто сотни долларов.
Поисковые системы теперь учитывают скорость загрузки при выдаче результатов: об этом прямо заявляли и Google, и «Яндекс». Медленные сайты опускаются в выдаче ниже, контекстная реклама показывается реже. У Google есть сервис, который позволяет проверить, насколько скорость загрузки сайта соответствует его стандартам поисковика.
Причин ускорить сайт много, но предприниматель вряд ли сможет тратить на это много времени, особенно на старте. Я подготовил список самых простых рекомендаций: вы можете ознакомиться с ними и передать разработчику или админу (лучше перед запуском сайта, а не после). А затем — вжух! — скорость загрузки страниц увеличится на десятки процентов, а иногда даже в несколько раз.
Хостинг — основа быстрого сайта: переход с неудачной площадки на площадку с хорошей репутацией может увеличить скорость загрузки в разы. Не буду рекомендовать конкретные бренды — есть группы в соцсетях и специальные ресурсы с отзывами. Скажу одно: экономить на хостинге нельзя. Сберечь существенную для бизнеса сумму всё равно не получится, а пострадать можно сильно.
На одном проекте мы сами столкнулись с неприятностями, когда купили самый дешевый хостинг, посчитав, что разницы не будет. Мы ошибались: хостинг-провайдер на одном сервере разместил еще и другие сайты. Когда на один из них хлынул поток посетителей, к которому провайдер оказался не готов, тормозить стали все сайты, и наш в том числе. Тогда провайдер без предупреждения начал переносить сайты на другие серверы. В итоге наш сайт упал на пару дней.
Еще совет про хостинг: лучше выбирать такой, чтобы серверы стояли в России. Многие используют немецкий хостинг, и он действительно может хорошо работать. Только из-за пиринговых войн (так называются конфликты операторов, которые не могут договориться об условиях соединения) сайт, расположенный за границей, может хорошо работать в Москве, но совсем плохо — в регионах. Впрочем, и в Москве скорость сайтов, размещенных на западных хостингах, редко совпадает с заявленной.
Технология CDN помогает увеличить скорость загрузки на обширной территории. CDN — это сеть серверов, которая распределена по стране и миру. Если подключить к ней сайт, то контент будет отдаваться не с того сервера хостинг-провайдера, где сайт хранится, а с сервера сети CDN, который расположен к пользователю ближе всех. Для сайтов, где все посетители, к примеру, москвичи или петербуржцы, не будет разницы. Но пользователь с другого конца страны ощутит прибавку в скорости загрузки сайта примерно в 1,5–2 раза.
Другая причина использовать CDN — страховка от неожиданного наплыва посетителей. Если на сайт одновременно заходит такое количество посетителей, на которое хостинг не рассчитан, он начинает тормозить, пока не прекращает работать вообще. Но если подключен CDN, то скорость сайта не падает, потому что нагрузка ложится не на один сервер, а распределяется. Посетители автоматически направляются на серверы, где сайт хранится в кэше, а нагрузка на данный момент небольшая.
Важно работать над тем, чтобы содержимое сайта весило как можно легче. Если не брать совсем сложные технологии и не превращать оптимизацию в самоцель, то есть четыре главных способа. В совокупности они могут прибавить до 40% к скорости загрузки сайта. Вот они.
Сжатие картинок.Вес каждой картинки надо уменьшать как можно больше, но без потери видимого глазу качества. Точных рекомендаций на этот счет нет. Оптимальный размер определяется опытным путем на одной картинке, а остальные ужимают по аналогии с ней. Главная ошибка при работе с изображениями — заливать их на сайт в полном размере, а масштаб менять уже в системе управления сайтом. В этом случае, как правило, их вес всё равно остается прежним.
Технология Progressive JPEG. Бывает, что на сайте уже загрузился текст, а картинка — еще нет, и вместо нее на странице остается белое поле. Progressive JPEG позволяет избежать этого эффекта. Сохраненная в этом формате картинка подгружается сначала в виде разноцветных пикселей, но с понятными очертаниями, а уже потом постепенно детализируется. Посетителю сайта кажется, что она уже загрузилась, даже когда до этого далеко. Сделать обычный JPEG прогрессивным можно в самом примитивном онлайн-сервисе. Бонус: при конвертации вес изображения уменьшится.
Gzip-сжатие контента. Эта технология почти моментально архивирует картинки и текст на сайте: информация передается посетителю в сжатом виде, а потом распаковывается в браузере. Звучит странно, но в результате пакеты данных, которые передаются через интернет, становятся меньше, и страницы открываются быстрее. Чтобы включить Gzip-сжатие, нужно всего лишь вставить небольшой фрагмент кода на сайт.
Создание поддоменов. В браузерах есть специфическое ограничение: загрузка контента с одного сайта может происходить в четыре потока, но не более. Поэтому некоторые интернет-магазины пользуются уловкой с поддоменами. То есть вместо одного www.сайт.ru создают еще адреса www.сайт.1.ru, www.сайт.2.ru и так далее и контент для одной страницы распределяют по этим разным адресам. Браузер воспринимает поддомены как отдельные сайты и снимает ограничение по числу потоков для загрузки.
Половина интернет-трафика в России приходится на телефоны и планшеты, поэтому сайт обязательно нужно адаптировать под мобильные устройства. Многие современные CMS умеют делать это автоматически, и специальную мобильную версию создавать не нужно. При этом для мобильной версии нужны картинки меньшего объема, и некоторые интернет-магазины даже изображения товаров сохраняют в двух версиях — для версий мобильной и обычной. Я же советую использовать облачный сервис, который моментально сжимает картинки до нужного размера, если информация передается с сайта на мобильное устройство. Скорость загрузки вырастет, а тратить время на оптимизацию изображений не придется.