Оптимизация через базовые настройки системы. Разгоняем Joostina. Практическое приложение. Оптимизация структуры веб-страниц
Встроенное кэширование
Отключение встроенной статистики
Отключение неиспользуемых расширений
Самый быстрый и безопасный способ настроить свой сайт на более высокую скорость и выжать их него максимум возможностей - основательно ознакомиться с настройками, располагающимися в «Глобальной конфигурации». Для доступа к настройкам необходимо авторизоваться с правами Супер-администратора в административной части, называемой так же панелью управления: http://www.example.ru/administrator . Далее надо выбрать пункт меню Сайт -> Глобальная конфигурация, или прямо на главной страницы панели управления, через кнопку быстрого доступа «Глобальная конфигурация».
Отключить генерацию RSS (syndicate)
Joostina, как и большинство современных CMS, умеет формировать RSS-ленты из материалов размещенных на сайте. Что бы браузеры при отображении страниц сайта автоматом подхватывали RSS ленты, ссылки на них прописываются в HTML код страниц через теги примерно такого содержания:
<link rel="alternate" type="application/rss+xml"
title="Joostina v 1.3.0 b"
href="http://www.example.ru/index2.php?option=com_rss&feed=0
&no_html=1" />
Но формирование ссылки на ленту занимает определённое время, запрос в базу данных на получение параметров отображения. Если же тег ленты необходим, а избавить от лишнего запроса тоже хочется - можно прописать ссылку напрямую в шаблоне сайта.
Использовать шаблон
Для каждого пункта меню в панели управления можно выбрать уникальное отображение и состав модулей. Но также для каждого из пунктов меню можно назначить уникальный шаблон. Если данная возможность на сайте не используется, то е. следует отключить. Для этого и создана данная настройка. Параметр позволяет выбрать единый шаблон для всего сайта, что исключит один запрос и его обработку для выбора конкретного шаблона. Аналогичная настройка существует для панели управления.
Отключить мамботы группы system
Мамботы, это чаще всего небольшие PHP-сценарии, срабатывающие на определенном этапе работы системы. Мамботы группы system срабатывают в момент инициализации системы. Чаще всего в группу входят расширенные обработчики SEF и библиотеки подключения Javascript. Все мамботы этой группы можно посмотреть в панели управления: меню -> Мамботы -> Мамботы сайта. Если справа в списке выбора типа нет группы «system» - то настройку рекомендуется отключить, это исключит один запрос в базу и лишнюю инициализацию механизма.
Отключить мамботы группы content, Отключить мамботы группы mainbody
Действие данного пункта аналогично группе system, но поступать тут надо внимательнее. Группа content - основная, за счет не. выводятся изображения, вставленные в текст через тег {mosimage}, разбивка на страницы внутри текста и т.д. Безопаснее всего поочередно снимать мамботы с публикации, и смотреть, что изменилось на сайте. Если все мамботы не опубликованы, а сайт отображается верно - можно отключить всю группу.
Использовать неопубликованные мамботы
Мамботы группы content часто работают, заменяя определ.нные теги в тексте, например, {mosimage}. Но если мамбот не опубликован, то система его вс. равно использует - чтобы убрать из текста этот самый тег {mosimage}. Если на сайте такие мамботы не используются - то лучше активировать данную настройку, исключив неиспользуемые обращения к базе данных и подключение лишних файлов.
Авторизация на сайте
Отключив данный пункт, вы запретите инициализацию пользователей на сайте. Параметр запретит заведение пользовательских сессий в базе данных и позволит более полно
кэшироваться страницам. Если на сайте не предусмотрена работа пользователей - то и авторизацию лучше отключить.
Время существования сессии на фронте
При авторизации для пользователя заводится специальная сессия, данные о ней записываются в базу данных и имеют определённый срок жизни, пока сессия жива - пользователь считается авторизованным. Если указать в настройке большое число жизни сессии - то в базе данных сессий будет довольно много значений, что повлечет дополнительную нагрузку для поиска сессий конкретного пользователя.
Отключить сессии на фронте
При посещении сайта авторизованным пользователем или даже гостем - для него запускается механизм инициализации сессий. Что влечет запись данных в базу, создание cookie у пользователя и постоянную проверку авторизации. Если авторизация на сайте не важна, то параметр рекомендуется отключить. Но учтите, что модуль отображающих посетителей будет выдавать не точную информацию, так как он как раз основывается на данных записанных в таблице сессий. Параметр рекомендуется использовать совместно с пунктом «Авторизация на сайте».
Отключить контроль доступа к содержимому
Хотя в Joostina имеется не очень много возможностей для полноценного создания и управления правами пользователей, доступ к содержимому всегда ведётся с учетом прав текущего пользователя. Это добавляет в SQL запрос дополнительное условие. На сайтах, где доступ не разграничен на зарегистрированных и гостей, параметр лучше активировать.
Считать число прочтений содержимого
При прочтении каждого содержимого, увеличивается значение поля счетчика в таблице содержимого. Постоянные изменения даже одного поля таблицы содержимого сводят на нет встроенный в mysql механизм кэширования, да и дополнительный запрос в базу тоже лучше исключить. Настройку рекомендуется выключить, а ведение статистики доверить специализированным сервисам, типа li.ru или Google Analytics.
Отключить проверки публикации по датам
Для каждого материала при редактировании можно указать определённые периоды начала и окончания публикации. Проверка по датам добавляет в каждый sql запрос условие соответствия текущей дате, а настройка данное условие отключает. Чем меньше условий в запросе - тем легче его будет отработать базе данных, и тем быстрее пользователь сайта увидит ожидаемые страницы.
GZIP-сжатие страниц
Позволяет передавать пользователю более компактные страницы. Содержимое пакуется через gzip - алгоритм на сервере, а распаковывается автоматически в браузере пользователя. Получается экономия на трафике, но немного больший расход ресурсов сервера, более подробно расчет оптимальности применения gzip приведен во второй главе книги «Разгони свой сайт».
Блокировка компонентов
Позволяет отключить прямой доступ к компонентам, набрав специальный адрес в браузере. Если на сайте имеется компонент, но он не используется - то настройку лучше активировать.
Рейтинг/Голосование
В базовой поставке системы имеется мамбот группы content, позволяющий выставлять рейтинг для каждого материала. Если такая возможность не требуется - рейтинг лучше отключить, это исключит лишние проверки и инициализации.
Ежедневная оптимизация таблиц базы данных
Добавляет в работу сайта ежедневную оптимизацию всех таблиц базы данных через выполнение OPTIMIZE TABLE для каждой. Данная процедура уменьшает фрагментацию и производит общую оптимизацию таблиц встроенными средствами mysql.
Сжатие CSS и JS файлов
Позволяет выдавать вместо обычных js и css файлов их упакованные аналоги. Экономит трафик и позволяет указать более длительное время кэширования. Работает только для встроенных файлов.
Значение тега revisit:
Позволяет указать параметр тега:
<meta name="revisit" content="10 days" />
Который указывает, как часто сайт должен посещать поисковый робот. Правильно установленное значение позволит исключить повышенную нагрузку на сервер, вызванную слишком частым посещением поискового робота.