Новости Joomla

Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях

Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях

👩‍💻 Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях. На старте его сайт на Joomla 3 вообще не смог обновиться на Joomla 5. Пришлось делать экспорт/импорт материалов. Проделав всё это он запустил-таки этот объём данных на Joomla 5. Тестовый скрипт грузил 200 материалов из этого объёма всего за 94 секунды ))) А главная страница с категориями грузилась 20 секунд. Добавив индекс для таблицы #__content

CREATE INDEX idx_catid_state ON #__content (catid, state);
он сократил время загрузки категорий до 1 секунды. Затем наш герой решил поковырять SQL-запрос в ArticleModel, который отвечает за выборку материалов. И решил заменить тип JOIN на STRAIGHT_JOIN для категорий.
// ->from($db->quoteName('#__content', 'a'))->from(    $db->quoteName('#__content', 'a')    . ' STRAIGHT_JOIN ' . $db->quoteName('#__categories', 'c')    . ' ON ' . $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid'))// ->join('LEFT', $db->quoteName('#__categories', 'c'), $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid'))
Что сократило загрузку 200 материалов из 150к с 94 секунд до 5. К слову сказать, боевой сайт на Joomla 3 крутится на 12CPU 64GB рамы. А все манипуляции с кодом он делает на базовом 1CPU 1GB сервере и замеры скорости даны именно для базового сервера. Но это всё в дискуссии, хотя в идеале должно вылиться в Pull Requests. Мы - Open Source сообщество, где никто никому ничего не должен. Джунгли. Но человек ищет пути оптимизации Joomla и предлагает решения. Если оказать поддержку и предложить помощь хотя бы с тестированием самых разнообразных сценариев, то возможно эти улучшения смогут войти в ядро. Пусть не быстро, пусть через несколько лет, пусть не все, но войдут. Достаточно предложить руку помощи и приложить немного усилий.
Дискуссию на GitHub можно почитать здесь.@joomlafeed#joomla #community #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 860 Просмотров
*

pomogu_chem_smogu

  • Осваиваюсь на форуме
  • 16
  • 1 / 0
Сайт www.radsoft.uz выполнил переадресацию слишком много раз.Как ее решить помогите пожалуйста будьте добры!
 После того как я написал в службу доставки они отправили это(ничего не понел, помогите пожалуйста):

На вашем сайте имеются ошибки:
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JRequest::_cleanVar() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/environment/request.php on line 151, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JFilterInput::getInstance() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/environment/request.php on line 577, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JRequest::getCmd() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/plugins/system/jcomments.php on line 31, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JRequest::getVar() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/environment/request.php on line 255, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JRequest::_cleanVar() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/environment/request.php on line 151, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JFilterInput::getInstance() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/environment/request.php on line 577, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JDispatcher::getInstance() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/application/application.php on line 511, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JFactory::getApplication() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/plugins/system/joomsef.php on line 55, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JFactory::getConfig() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/plugins/system/joomsef.php on line 61, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method SEFConfig::getConfig() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/plugins/system/joomsef.php on line 65, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JLoader::load() should not be called statically in /var/www/vhosts/radsoft.uz/httpdocs/libraries/loader.php on line 161, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JLoader::register() should not be called statically in /var/www/vhosts/radsoft.uz/httpdocs/libraries/loader.php on line 138, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JURI::getInstance() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/plugins/system/joomsef.php on line 70, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Only variables should be assigned by reference in /var/www/vhosts/radsoft.uz/httpdocs/plugins/system/joomsef.php on line 71, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JFactory::getDBO() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/session/storage/database.php on line 84, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JTable::getInstance() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/session/storage/database.php on line 89, referer: feel.li
[Tue Feb 14 11:07:12 2017] [error] [client 88.150.240.11] PHP Strict Standards: Non-static method JFactory::getDBO() should not be called statically, assuming $this from incompatible context in /var/www/vhosts/radsoft.uz/httpdocs/libraries/joomla/database/table.php on line 112, referer: feel.li
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
*

pomogu_chem_smogu

  • Осваиваюсь на форуме
  • 16
  • 1 / 0
версии где?
Движка сайта и PHP на хосте?
Здрасте версия PHP 5.4.28, движок Joomla 1.5,
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Здрасте версия PHP 5.4.28, движок Joomla 1.5,
А зачем писать в
Цитировать
Форум русской поддержки Joomla! CMS > Joomla 3.x
*

pomogu_chem_smogu

  • Осваиваюсь на форуме
  • 16
  • 1 / 0
*

pavelrer

  • Давно я тут
  • 615
  • 10 / 2
Админы: удалите, логин автор уже дал, пароль ну часик! Потом автор будет кричать - Караул!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с адаптацией

Автор Leo1986

Ответов: 1
Просмотров: 1033
Последний ответ 22.05.2025, 20:30:25
от Leo1986
Проблема с плагином News Show gk5

Автор Evgeniy

Ответов: 4
Просмотров: 1424
Последний ответ 27.03.2025, 05:38:57
от R31rus
Проблема со входом в панель администратора Joomla 3.x после обновления

Автор danieeljose

Ответов: 2
Просмотров: 1581
Последний ответ 24.03.2025, 20:33:02
от R31rus
Переход на страницу материала после его размещения пользователем

Автор stepan39

Ответов: 0
Просмотров: 853
Последний ответ 22.11.2024, 07:14:15
от stepan39
Проблема с меню

Автор denis_4

Ответов: 6
Просмотров: 1636
Последний ответ 07.08.2024, 14:00:43
от denis_4