Семь лучших советов, как сделать ваш сайт на Magento невероятно быстрым
Опубликовано: 2022-06-11Производительность веб-сайта Magento 2 всегда была большой проблемой для розничных продавцов. Исследования показывают, что каждая дополнительная секунда загрузки может снизить коэффициент конверсии электронной коммерции на 4,42%. А низкая конверсия на страницах с высоким потребительским интересом, таких как оформление заказа или домашняя страница, наверняка снизит ваши потенциальные доходы. Как вы решаете эту проблему и ускоряете свой магазин Magento? Следуйте семи советам ниже.
Прежде чем мы перейдем к конкретным шагам, я хотел бы отметить, что все вопросы, связанные с производительностью, обычно имеют место на двух уровнях: инфраструктура (хостинг, CDN и т. д.) и приложение (интерфейс и сервер). Рекомендации, которые вы найдете в этой статье, применимы к обеим системам для достижения наиболее эффективного повышения производительности.
Совет № 1: обновитесь до Magento 2, если вы все еще используете Magento 1
Adobe прекратила поддержку Magento 1 в июне 2020 года, но сотни компаний все еще используют его. Если вы один из них, рассмотрите это сообщение как призыв к миграции как можно скорее. Среди многих преимуществ Magento 2 (теперь известного как Adobe Commerce) производительность является самым большим, превосходящим его устаревший аналог во многих случаях использования:
- Magento 2 обрабатывает на 39% больше заказов в час, достигая 2558 заказов в час.
- Он обеспечивает почти мгновенное время отклика для страниц каталога (менее 2 секунд).
- Это позволяет сократить время отклика сервера добавления в корзину до 66%, которое составляет менее 500 миллисекунд.
- Он обеспечивает на 51 % более быстрое время отклика гостя при оформлении заказа и на 36 % более быстрое время отклика клиента при оформлении заказа для всех шагов оформления заказа вместе взятых.
Кроме того, последняя и новейшая версия Magento 2.4.x стала еще быстрее благодаря значительному улучшению времени отклика страницы витрины, ускорению загрузки изображений, а также улучшенной производительности кэширования и добавления в корзину.
Совет № 2: смените хостинг-провайдера
Большая часть производительности зависит от способности вашего сервера обслуживать большое количество пользователей без замедления или зависаний в часы пик. Забудьте о виртуальном хостинге для вашего магазина Magento. Ваш план хостинга должен включать как минимум твердотельные (SSD) жесткие диски и как минимум 4 ГБ ОЗУ. Точные системные требования зависят от вашего магазина.
Я всегда рекомендую своим клиентам Magento размещать свои веб-сайты на AWS, который является доступным и мощным. Он обеспечивает стабильную среду, позволяющую вам обеспечивать первоклассную производительность веб-сайта при расширении ваших бизнес-операций, пользователей и заказов.
Совет № 3: внедрите жизнеспособную стратегию кэширования (или оптимизируйте существующую)
Кэш — это способ предварительной загрузки веб-страниц для быстрой доставки контента. По сути, он хранит все элементы страницы, такие как текст и изображения, поэтому пользователю не нужно запрашивать файлы с сервера каждый раз, когда они посещают ваш сайт.
Кэширование особенно удобно, когда у вас есть продукт со многими атрибутами, которые загружаются слишком долго. Magento 2 обеспечивает полностраничное кэширование, но вы можете еще больше увеличить его поток, используя передовые технологии кэширования, такие как Varnish и Redis.
Varnish будет хранить (или кэшировать) файлы или фрагменты файлов в памяти и в конечном итоге сократит время отклика и потребление пропускной способности сети при будущих эквивалентных запросах. Он находится между веб-сервером и базой данных Magento и проксирует HTTP-запросы всех пользователей, чтобы сократить время отклика для возврата контента пользователям.
Redis будет действовать как кеш по умолчанию для хранения часто задаваемых запросов, ключей и пользовательских сеансов. Он заменяет стандартную файловую систему кэширования Magento и добавит вашему сайту дополнительную скорость.
В то время как Varnish фокусируется на внешнем кэшировании, Redis может хранить другие структуры данных, такие как кэши EAV и Configuration. Вот почему я рекомендую использовать их в тандеме.
Совет № 4: рассмотрите возможность добавления CDN
CDN означает сеть доставки контента. У них есть географически распределенные серверы по всему миру, поэтому пользователи могут загружать данные с ближайших к ним серверов. CDN могут доставлять контент любого типа, включая изображения, мультимедиа, файлы CSS/JS, темы и модули, и могут выступать в качестве общего оптимизатора сайта.
Magento поставляется предварительно сконфигурированным для поддержки CDN, хотя для его настройки вам потребуются некоторые технические знания. В этом нет абсолютной необходимости, особенно для малого бизнеса с небольшим трафиком, который не может инвестировать в техническое решение и его внедрение.
Тем не менее, это необходимо для критически важных веб-сайтов с интенсивным трафиком, которые серьезно относятся к обеспечению наилучшего взаимодействия с пользователем. Лично я рекомендую Akamai, Cloudflare и Amazon Cloudfront.
Совет № 5: проведите аудит сайта
Если сайт электронной коммерции зарабатывает 100 000 долларов в день, 1-секундная задержка страницы потенциально может стоить вам 2,5 миллиона долларов потерянных продаж каждый год. Это отставание вызвано узкими местами производительности.
Существует так много факторов, вызывающих узкие места, как количество запросов к серверу, вес страницы, ленивые элементы страницы, ленивая загрузка изображений, сторонние расширения и плохо написанный или неоптимизированный код. Аудит выявляет эти технические проблемы в back-end и front-end, решает их, а затем показывает производительность после модификаций.
Некоторые из наиболее распространенных узких мест производительности Magento могут включать:
- Оставить основные неиспользуемые модули включенными (например, автономная отправка и платежи, Captcha, Persistent, RSS, MSRP, Send Friend, Weee и т. д.).
- Нагромождение ненужных функций, таких как плагины и элементы макета.
- Несоблюдение стандартов кодирования и лучших практик.
Даже добавление нескольких функций веб-сайта может привести к снижению производительности вашего веб-сайта. Проводите регулярный аудит кода Magento, чтобы убедиться, что ваш магазин не загроможден ошибками и узкими местами.
Совет № 6: следуйте рекомендациям по производительности Magento
Это может быть самый очевидный совет, но он работает в большинстве случаев. Magento Performance Best Practices — это бесценное руководство, предоставленное вам самой Adobe, о том, как настроить ваш магазин наиболее эффективным способом.
Руководство включает в себя довольно много идей, но вот ключевые ускорители:
- Включите все кеши на странице «Система» > «Инструменты» > «Управление кешем». А еще лучше подключите кеш Varnish, о котором мы говорили выше.
- Включить асинхронные уведомления по электронной почте
- Используйте сторонние инструменты, такие как расширения оптимизации скорости Magento для минимизации и объединения JS (например, r.js).
- Активируйте протокол HTTP2 в качестве альтернативы использованию JS-связки.
- Не используйте устаревшие настройки, такие как слияние файлов JS и CSS, поскольку они были разработаны только для синхронно загружаемых JS в разделе HEAD страницы. Использование этого метода может привести к объединению и потребовать неправильной работы логики JS.
Кому-то эти рекомендации могут показаться слишком техническими, поэтому вам лучше иметь некоторую техническую подготовку или воспользоваться помощью кого-то с опытом работы с Magento.
Совет № 7: проведите стресс-тест
Стресс-тест — важный шаг в улучшении масштабируемости и обеспечении того, чтобы ваш магазин выдерживал пиковые нагрузки во время флэш-продаж. Во время стресс-теста вы доводите сайт до критической точки, постепенно увеличивая нагрузку выше ожидаемого максимума.
Во-первых, вам нужно сгенерировать образцы данных для тестирования производительности. Magento позволяет создавать больше пользователей, магазинов, категорий, продуктов и т. д., а также устанавливать профили (маленькие, средние, большие и очень большие). Обратитесь к официальной документации Magento для получения дополнительной информации.
Во-вторых, вы устанавливаете среду предварительного тестирования с помощью инструмента по вашему выбору. Важно взять маршруты пользователей, которые вы наметили на этапе подготовки, и ввести их в инструмент тестирования производительности для создания модели рабочей нагрузки.
В-третьих, вы клонируете существующую базу данных Magento, убеждаетесь, что все инструменты работают правильно, и запускаете тест производительности. Позже вы можете проанализировать результаты, создать отчеты и определить узкие места, которые необходимо устранить.
Я знаю, что это кажется легче сказать, чем сделать, но этот последний совет должен очень помочь крупным торговцам. Проведите стресс-тестирование вашего веб-сайта Magento, чтобы убедиться, что он может обрабатывать большие объемы трафика и масштабироваться независимо от количества пользователей и продуктов.
Последнее замечание для заключения: онлайн-покупатели никогда не были достаточно терпеливы, чтобы ждать загрузки страницы продукта более 3 секунд. Вы сами должны принимать меры, выделять бюджет на оптимизацию производительности и впечатлять своих клиентов оптимальным пользовательским интерфейсом.