Что я могу сделать, кроме использования плагина кеша, такого как jotcache, чтобы улучшить время отклика сервера моего сайта?
Я уже удалил все неактивные модули статей, плагины и компоненты, могу ли я что-то еще сделать, чтобы улучшить это?
Я говорю о времени, прежде чем клиент (браузер) получит ответ на свой запрос . И не время загрузки страницы.
php
cache
performance
server-response-time
hosting
веб-Тики
источник
источник
Ответы:
Есть несколько шагов, которые вы можете предпринять, чтобы увеличить производительность на стороне сервера. Обратите внимание, что некоторые из них не будут работать с большинством общих хостов. Для высокой производительности обычно требуется более точный контроль.
Как и при любой оптимизации, вы должны измерить влияние, которое она оказывает на производительность вашего сайта. Для базовой оптимизации полезны такие инструменты, как PageSpeed и YSlow (я рекомендую версии Firefox). Для более глубокого понимания вам необходимо измерить фактическое время отклика вашей действующей системы за определенный период времени.
PHP
Включить кеширование кода операции
Это, пожалуй, самая большая вещь, которую вы можете сделать, чтобы повысить производительность вашего сайта. Я рекомендую использовать OpCache или APC . Конфигурация этих кэшей может быть изменена для еще большей производительности в зависимости от конкретных потребностей серверов и сайтов, но простая установка - это уже огромный прирост.
Обновить версию PHP
Более новые версии PHP регулярно идут с улучшениями производительности. Кроме того, есть ряд случаев, когда Joomla может использовать лучший код при работе на более новой версии PHP. На сегодняшний день вам не следует использовать версию PHP, более раннюю, чем PHP 5.4, если вы заботитесь о производительности.
Настройки PHP
В более старых версиях PHP (<= 5.3) позаботьтесь о том, чтобы выключить
register_globals
иmagic_quotes_gpc
получить бесплатную производительность. На PHP> = 5.6 изменитьalways_populate_raw_post_data
на -1.Расширения PHP
Joomla содержит некоторый код для обхода отсутствующих расширений PHP. Это всегда будет медленнее, чем эти расширения. Для достойного повышения производительности установите следующие расширения:
mbstring
,zip
,ftp
Веб сервер
Включить gzip
Включение сжатия на стороне сервера меняет пропускную способность для ресурсов ЦП. Для большинства сайтов это правильный вызов. Будьте осторожны, сжимая только текстовые данные, сжатие двоичных данных даст вам нагрузку на процессор без преимуществ пропускной способности. Вы также можете включить сжатие в настройках Joomla, но лучше, если вы позволите серверу справиться с этим.
Предварительно сжать статические ресурсы
Я не говорю о минификации (хотя это тоже помогает), но вы можете настроить Nginx и Apache для сервера уже сжатых ресурсов, эффективно устраняя попадание процессора в сжатие gzip. Бонусные баллы: используйте Zopfli для еще небольших файлов.
Используйте FastCGI для PHP
Более конкретно, вы должны использовать
php-fpm
. Это предотвращает запуск PHP, когда браузер запрашивает не-PHP-файл.Используйте соответствующие заголовки кэша
Использование
Expires
заголовка может значительно уменьшить необходимые ресурсы сервера. В конце концов, самый быстрый запрос - тот, который никогда не был выполнен.апаш
Обычно я рекомендую использовать Nginx для высокопроизводительных сайтов. Если по какой-то причине вам абсолютно необходимо использовать Apache, я получил бонусный совет:
Отключить AllowOverride
Установка
AllowOverride
дляNone
предотвращает много дискового ввода - вывода иJoomla
Не используйте режим FTP
Хотя это не влияет на то, как пользователи читают сайт, это замедлит некоторые операции, такие как установка расширений.
Отключить неиспользуемые расширения
Это особенно касается плагинов, многие из которых запускаются при каждом запросе. Отключение меню и компонентов в основном полезно при перечислении доступных расширений и типов меню. Также потратьте 5 минут, чтобы просмотреть расширения, которые поставляются с ядром Joomla, и отключите те, которые вы не используете.
Выключить подготовить контент
Если вы используете много пользовательских модулей (
mod_custom
не пользовательских, как в самом написании), проверьте, можете ли вы отключить подготовку контента в них. Это экономит некоторую обработку.Использовать кеширование
Если вы серьезно относитесь к производительности, вы захотите включить кэширование. Особенно полезно для чтения тяжелых сайтов со многими анонимными пользователями. Зарегистрированные пользователи обойдут большую часть кэша, если у вас их много, эффект не будет таким большим.
Используйте альтернативный обработчик сеанса
Используя альтернативный обработчик сеанса, вы можете освободить базу данных для более важных вещей. Я бы не стал рекомендовать файл (который в настройках Joomla называется «None»), так как это снова увеличит дисковый ввод-вывод. Использование APC - это, пожалуй, самый быстрый способ, но он увеличивает риск потери всех данных сеанса. Правая золотая середина - Memcache. Хотя для этого требуется дополнительный процесс, он более надежен, чем APC, и намного быстрее, чем хранение всех данных в базе данных.
Сделайте свой сайт простым
Вам действительно нужна эта кнопка на Facebook? А как насчет этой милой иконки, которую никто никогда не видит, потому что она частично скрыта за каким-то баннером? Чем меньше будет отображаться ваш сайт, тем быстрее он будет. Также везде, где это возможно, используйте CSS3 вместо изображений.
Разнообразный
Установить значок
Благодаря решению, относящемуся к Internet Explorer 4.0, браузеры делают запрос на файл, вызываемый
favicon.ico
всякий раз, когда пользователь посещает ваш сайт. Если у вас его нет, это вызывает ненужный ввод-вывод, поскольку 404 ответа не кэшируются. Либо укажите значок вашего сайта с метатегом HTML, либо добавьте файл с именемfavicon.ico
в корневой веб-каталог. Не хотите иконку? Поместите прозрачный PNG размером 1x1 пикселей в этом месте. Обратите внимание, что расширение все еще должно быть.ico
.Оптимизируйте свои изображения
Удивительно, какую экономию можно получить, оптимизируя изображения, особенно файлы PNG. Существует множество инструментов, доступных для любой операционной системы, лично я использую ImageOptim, который доступен для OS X. Основные образы Joomla уже оптимизированы, но изучите ваши собственные изображения, особенно важны шаблоны. Вы также можете проверить используемые вами расширения. Если они с открытым исходным кодом, почему бы вам не отправить запрос на извлечение, содержащий недавно оптимизированные изображения?
Продвинутый
Если вы действительно хотите сделать все возможное, рассмотрите возможность размещения Varnish перед вашим сайтом. Он кэширует запросы на ваш сайт и, если возможно, обслуживает их из своего собственного кэша, никогда не обращаясь к Joomla. Это сложный инструмент, но с большой силой. Joomla не будет использовать расширенные функциональные возможности, такие как Edge Side Includes (ESI), но ваш собственный код может.
источник
Одна большая вещь, которую вы можете сделать, чтобы улучшить время отклика для вашего сайта, это обновить настройки вашего модуля. Пользовательские модули (использующие mod_custom) имеют возможность включить / отключить подготовку контента. Это позволяет запускать подключаемые модули содержимого для содержимого в вашем пользовательском модуле. Он мощный при правильном использовании, но добавляет дополнительное время рендеринга для вывода модуля. Если вы на самом деле не используете плагин контента в контенте вашего пользовательского модуля, лучше отключить его. Когда вы это сделаете, вы увидите уменьшение времени рендеринга модуля.
Снимок экрана настройки:
источник
Я предполагаю, что вы запустили свой сайт на скорости Google Page, и вы действительно пытаетесь сократить время отклика страницы, т.е. время, затрачиваемое вашей разметкой для отправки в браузер.
Наиболее вероятные виновники этого - тяжелые запросы. Включите отладку и посмотрите внизу страницы, чтобы выяснить, какие запросы наиболее тяжелые, и уберите или уменьшите их. Вы также можете воспользоваться помощью медленных журналов запросов вашего сервера MySQL.
Следующее, что вы можете посмотреть, это кэширование. В зависимости от типа вашего сайта вы можете включить консервативный или прогрессивный кеширование. Прогрессивный должен использоваться на сайтах, которые не имеют и пользовательских функций.
источник
Вещи, которые я знаю об этом, могут помочь (большинство из которых были перечислены):
Я использовал комбинацию встроенного кеша Joomla (или даже APC, включенного на сервере) и плагинов, таких как gzip или плагин rockbooster для темы ракет. Я также использую плагин nonumbers CDN с учетной записью Amazon.
Это определенно помогает, но вы должны следить за своим сайтом и отключать кеш для компонентов, которые имеют проблемы. Мне пришлось обойти CiviCRM на нашем сайте, потому что это не очень хорошо с кешированием. Joomla поставляется с плагином cachecontrol, который может справиться с этим.
источник
Вы также захотите изучить сокращение локальных активов и правильное кэширование. Одна вещь, которую вы можете сделать, это использовать плагины CDN. Вот два я бы порекомендовал:
'corePHP' jomCDN - https://www.corephp.com/joomla-products/jomcdn
NoNumbers CDN для Joomla! - http://www.nonumber.nl/extensions/cdnforjoomla
Кроме того, если ни одно из вышеперечисленного не решает проблемы, возможно, у вас есть более глубокая проблема - возможно, внутри вашего шаблона, самого сервера или других вещей. Если это так, может быть лучше нанять кого-нибудь, чтобы выследить проблему и решить ее для вас.
источник
Вы также можете использовать этот код в вашем файле .htaccess:
источник
Я создал более сотни сайтов, используя Joomla!
В большинстве случаев люди думают, что Joomla интенсивно работает на сервере, но, согласно проведенному мной анализу, самое важное для сохранения вашего сайта БЫСТРОМ - это ОПТИМИЗАЦИЯ ИЗОБРАЖЕНИЙ и JS / CSS.
Не используйте редакторы Joomla, такие как JCE, чтобы просто изменить размер изображения. Используйте графические редакторы, такие как Photoshop или любой другой редактор, чтобы изменить размер изображения до необходимого размера!
Используйте инструменты сжатия JS / CSS.
Мы всегда используем Pingdom Tools для анализа скорости работы сайта и используем встроенную функцию T3 Framework для оптимизации JS / CSS!
источник
Вы удалили неиспользуемые плагины? Joomla должен загрузить и обработать каждый опубликованный плагин для событий, вызванных в запросе.
Вы должны понимать, какие расширения вы установили и как они взаимодействуют с Joomla!
Многие расширения устанавливают плагины, которые управляют контентом, системой или действиями пользователя для запуска функций кода. Некоторые из них могут быть лишними.
Я знаю, что k2 устанавливает много плагинов, которые реагируют на события, связанные с языком, которые не дают реального вывода для сайтов с одним языком. Отмена публикации этих плагинов может сократить время обработки.
источник
Улучшение ресурсов плана сервера / веб-хостинга
Возможно, это не тот ответ, который искал ОП, но стоит упомянуть, если он не очевиден для всех (и пока нет других ответов): улучшить ресурсы сервера, такие как память, процессор и скорость диска.
Если вы используете общий веб-хостинг, переход с «экономичного» плана на «бизнес» или другой более продвинутый план может улучшить ресурсы сервера, доступные для вашего сайта, и сократить время отклика сервера. Переход на более качественную хостинговую компанию (например, с менее загруженными серверами общего веб-хостинга) также может помочь.
Лучший хостинг-план может также дать вам доступ к улучшениям производительности, которые не включены в базовый хостинг-план. Например, планы хостинга SiteGround «GrowBig» и «GoGeek» включают динамический кэш, который помогает значительно сократить время отклика сервера. Параметр динамического кэша недоступен в плане «Запуск».
источник