Новости 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 Гость просматривают эту тему.
  • 10 Ответов
  • 1323 Просмотров
*

rockettboost

  • Захожу иногда
  • 383
  • 3 / 5
СSS .
« : 02.04.2011, 19:19:43 »
Копирую условия CSS из файлов модулей в CSS шаблона , для удобства .
Повлияет это на загруженность CSS ?
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
Re: СSS .
« Ответ #1 : 02.04.2011, 19:37:09 »
Зависит от того, сколько раз и где вызывается модуль (модули), если один раз и только на главной (для примера), то не стоит этого делать, вполне приемлемо грузить 2-3 CSS файла. А например CSS основного компонента можно вынести в CSS шаблона.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

rockettboost

  • Захожу иногда
  • 383
  • 3 / 5
Re: СSS .
« Ответ #2 : 02.04.2011, 19:43:48 »
Зависит от того, сколько раз и где вызывается модуль (модули), если один раз и только на главной (для примера), то не стоит этого делать, вполне приемлемо грузить 2-3 CSS файла. А например CSS основного компонента можно вынести в CSS шаблона.
Да вот кстати , хотел тоже спросить о том как вынести CSS плагина в шаблон -> менеджер шаблонов.
Просто скопировать в шаблон и править или скопировать и удалить из плагина ?
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
Re: СSS .
« Ответ #3 : 02.04.2011, 20:03:40 »
Скопировать и удалить из плагина вызов CSS, только рекомендую перед началом работ делать бэкапы.

Общая схема - копируем, вставляем в шаблон сайта, удаляем из модуля/компонента/плагина вызов CSS - правим в шаблоне сайта.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

rockettboost

  • Захожу иногда
  • 383
  • 3 / 5
Re: СSS .
« Ответ #4 : 02.04.2011, 20:10:05 »
Скопировать и удалить из плагина вызов CSS, только рекомендую перед началом работ делать бэкапы.

Общая схема - копируем, вставляем в шаблон сайта, удаляем из модуля/компонента/плагина вызов CSS - правим в шаблоне сайта.
если бы ещё подсказал откуда удалить вызов css  )))
использую JComments .
Скопировал 2 файла CSS в свой шаблон .
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
Re: СSS .
« Ответ #5 : 02.04.2011, 20:11:22 »
Хмм... Не представляю, JComments использовал всего пару раз и задачи оптимизации не стояло.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

rockettboost

  • Захожу иногда
  • 383
  • 3 / 5
Re: СSS .
« Ответ #6 : 02.04.2011, 20:14:29 »
Хмм... Не представляю, JComments использовал всего пару раз и задачи оптимизации не стояло.
ну хотябы в какую сторону думать )))
а для других модулей ты где убираешь ?
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
Re: СSS .
« Ответ #7 : 02.04.2011, 20:37:47 »
В модуле... В шаблонах модуля смотреть.
--------------------
Посмотри любой сторонний модуль, там явно обычно видно где CSS подключается.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

rockettboost

  • Захожу иногда
  • 383
  • 3 / 5
Re: СSS .
« Ответ #8 : 02.04.2011, 20:40:48 »
да кажется нашёл , буду пробовать , спасибо )
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
Re: СSS .
« Ответ #9 : 02.04.2011, 20:44:28 »
Бэкапы делать только не забывай, чтобы было куда откатиться.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

rockettboost

  • Захожу иногда
  • 383
  • 3 / 5
Re: СSS .
« Ответ #10 : 02.04.2011, 20:48:46 »
Бэкапы делать только не забывай, чтобы было куда откатиться.
да я в DW - шаг вперёд - два назад ))))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться