С развитием и ростом любого интернет-ресурса возникают проблемы, связанные с потреблением большого количества ресурсов, что приводит к снижению его производительности.
Снижение производительности влечет за собой две проблемы - увеличение расходов на содержание сайта и частичную потерю своей аудитории(будущих клиентов). Чтоб избежать таких проблем, нужно постоянно работать над этим.
В оптимизации работы сайта можно выделить два этапа
- Оптимизация клиентской части;
- Оптимизация серверной части.
Клиентская оптимизация
Цель клиентской оптимизации - увеличение скорости загрузки данных за счет снижения их объема и улучшение отображения сайтов на различных устройствах.
Как увеличить скорость загрузки сайта?
Скорость загрузки сайта зависит от объема загружаемой информации и количества запросов к серверу. В первую очередь, чтобы снизить нагрузку на сервер, нужно уменьшить количество запросов к нему. Снижение количества запросов можно достичь путем: объединения(склеивания) загружаемых файлов изображений, стилей, js; кэширования статики на клиентской стороне. Снижение объема загружаемых данных достигается путем: сжатия передаваемых данных с помощью gzip и deflate модулей, доступных в браузере и в веб-сервере; сжатия картинок без потери качества; минификации CSS и JS модулей. К клиентской оптимизации относится еще мобильная оптимизация. С широкой доступностью мобильных устройств стоит позаботиться о корректном отображение своего ресурса на них. Отображение сайта на различных устройствах достигается путем адаптивной верстки. Большинство разработчиков используют готовые решения, наиболее популярное из которых - Bootstrap фреймворк. Выявить все слабые места на клиентской стороне сайта можно с помощью сервиса PageSpeed от Google. Инструмент проверит Ваш сайт и предложит решения данных проблем. Серверная оптимизация Цель серверной оптимизации - увеличение скорости отдачи данных за счет снижения потребляемых ресурсов сервера. Серверная оптимизация более трудоемкий процесс, зависящий от количества используемых сервисов и их конфигурации. Как повысить производительность сервера? Правильная оптимизация серверной части Вашего веб-приложения позволит использовать его мощность по-максимому. Оптимизация запросов к базе данных Начать работу над оптимизацией сервера следует с базы данных. Если Вы используете MySql, выявить сложные запросы можно, проанализировав логи, расположенные в файле по адресу /var/log/mysql/slow_log. В большинстве случаев БД является узким местом на сайтах. Кэширование Если сложный запрос не удается упростить, то в данной ситуации лучше всего воспользоваться кэшированием. В зависимости от ситуации используются сервисы Memcache и Varnish. Использование кэширующих серверов снижает нагрузку на сервер в N раз. Оптимизация php Если Вы используете в качестве Fastcgi php, то рекомендуем обратить внимание на его конфигурацию. Настройка opCache и параметров php позволяет значительно ускорить его работу. Оптимизация nginx Рекомендуем использовать веб-сервер Nginx. Он легко настраивается и может работать при очень больших нагрузках. Тюнинг Nginx повысит эффективность его работы. Не забывайте работать над внутренним кодом своего проекта. За частую мелочи в коде приводят к существенным проблемам производительности. Проверить скорость работы сайта можно тут • https://developers.google.com/speed/pagespeed/insights/ • https://web.devАдрес обзора: https://soft-arhiv.com/publ/kak_uskorit_zagruzku_sajta