Как снизить нагрузку на CPU для сайта на Joomla?

0
1605

Если у вас стоит Joomla на одном крупном или нескольких небольших сайтах, то скоро вы можете столкнуться с тем, что сайт будет недоступен, а от хостера будут поступать просьбы снизить нагрузку или перейти на выделенный сервер (что намного дороже, чем обычный вирутальный хостинг). Нагрузка - это значит, что сайт грузит процессор, базу данных и/или потребляет много памяти сервера хостера.

Если у вас несколько сайтов, то сначала надо определить какие именно сайты грузят систему больше всего и какие запросы с них. Запросите у хостера access_log с информацией по запросам к сайту.

Рассмотрим способы, которые помогут снизить нагрузку Joomla на хостинг или сервер

1. Включить кэширование в Joomla. Кэширование страниц сайта позволит ускорить загрузку сайта и снизить нагрузку на сервер или хостинг. Время кэширования страниц необходимо установить в зависимости от частоты наполнения материалами сайта. Если вы добавляете материалы на сайт не чаще чем раз в сутки, и время на обновление занимает не более одного часа, то смело можно ставить кэширование на 23 часа или 1380 минут. Если часто, то 30 минут вполне достаточно. Установить кэширование страниц можно через панель Администратора, а именно (на примере Joomla 1.5.X-3.X.X):

Админ-панель сайта –> Общие настройки –> Система –> Установки кэша: Включить кэширование (Да), Время кэширования (ХХХ минут), Обработчик кэша (только Файл) – >Сохранить.

Админ-панель сайта –> Расширения –> Менеджер плагинов –> плагин Система кэш: Использовать кэш браузера (на ваше усмотрение, можно поставить — Да), Время жизни кэша (ставим ХХХ минут) – Включить плагин.

Чтобы избежать кракозябров при включении  плагина Кеша System — Cache Joomla!  в  файл .htaccess  внесите строчку:

AddDefaultCharset utf-8

Также желательно в разделе Менеджер модулей, во всех модулях установить кэширование: Использовать глобальные.

2. Отключите ненужные расширения Joomla. Рекомендуем вам отключить, а лучше удалить не используемые компоненты, модули и плагины (мамботы). Также проанализировать целесообразность и эффективность работающих расширений. Чем меньше расширений, тем быстрее работает Joomla и тем меньше запросов к базе данных сервера, то есть меньше нагрузка.

3. Включите Gzip-сжатие шаблонов сайта или сервера. Gzip-сжатие (html, css, js) позволит уменьшить трафик и, соответственно, нагрузку вашей Joomla. Внимание! активировать Gzip на сайте строго не рекомендуется, в случае если на стороне веб-сервера уже активировано Gzip-сжатие. Иначе нагрузка на процессор от вашего сайта только возрастёт! Если вы не знаете активировано ли Gzip-сжатие у вашего хостинг-провайдера или собственного сервера, лучше это узнать, уточнить.

4. Отключите сторонние SEF-компоненты. Достаточно большая нагрузка возникает из-за использования SEF-компонентов, генерирующих человекопонятные ссылки, сторонних разработчиков, таких как Artio, sh404SEF и тому подобные. Данные компоненты требуют тщательной настройки. Лучше использовать встроенный SEF, тем более что по результатам тестов joomla.org установлено, что встроенный SEF практически не требователен к ресурсам и Joomla с включенным SEF работает быстрее, чем с отключенным. Включить стандартный SEF можно в панели Администратора, а именно (на примере Joomla 1.5.X-3.X.X):

Админ-панель сайта  –> Общие настройки –> Сайт –> Установки Search Engine Optimization: Включить SEO (Да).

Админ-панель сайта  –> Расширения –> Менеджер плагинов –> включить плагин Система SEF.

5. Оптимизируйте файл robots.txt. Чтобы снизить нагрузку от роботов поисковых систем, которые скачивают страницы вашего сайта для индексации, вам необходимо задать им правила индексации, а также временную задержку на индексацию страниц. Для этого нужно создать в обычном блокноте файл robots.txt со следующим содержанием:

User-agent: *

Disallow: /administrator/

Disallow: /cache/

Disallow: /components/

Disallow: /images/

Disallow: /includes/

Disallow: /installation/

Disallow: /language/

Disallow: /libraries/

Disallow: /media/

Disallow: /modules/

Disallow: /plugins/

Disallow: /templates/

Disallow: /tmp/

Disallow: /xmlrpc/

Crawl-delay: 5

где Crawl-delay: 5 – это задержка в 5 секунд, можно поставить даже 10-20.

6. Закройте через robots.txt от индексации поисковыми ботами компонент com_search и файл index2.php. Также можно закрыть com_wraper и com_newsfeed (ленты новостей), т.к. поисковики могут посчитать это дублированным контентом. Ниже приведен набор правил для встроенного SEF:

User-agent: *

Disallow: /index2.php

Disallow: /components/com_search/

Disallow: /components/com_newsfeeds/

Disallow: /components/com_wrapper/

Похожие записи

07.07.2019
0
4286

5 Калькуляторов Joomla под любые задачи, обзор и настройка

Сегодня при помощи сторонних разработок для joomla можно рассчитать всё, что угодно: стоимость ...
06.07.2019
0
3778

Меню в Joomla — добавление вложенного или выпадающего меню

В шаблоне позиции для меню обычно предусмотрены слева или справа, а так же и в верху (горизонт...
08.07.2019
0
5681

Тестируем Joomla 4: административная панель, разделы, поле работы вебмастера

Концепция оформления административной панели joomla4 разработана веб-студией JoomShaper, специализ...

Комментарии

Ваш комментарий будет отправлен на модерацию.
  • Комментарии не найдены