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

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
Привет форумчане!Появилась небольшая проблема с выводом раздела-категории,все видно на скрине:

Собственно,в буге видно,что блок отвечающий за вывод раздела не имеет никаких правил,в отличае от createdata,которая отвечает за вывод даты создания.Прошу подскажите,можно ли как то прописать правило для блока вывода раздела,или хотя бы чтобы он имел тоже класс createdata.Большое спасибо!
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
неужто такая сложная  проблема../. :(
« Последнее редактирование: 07.12.2010, 14:46:01 от pormonik »
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
может зашел тот кто знает)
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
Нет,это не совсем то :(
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
да,действительно в проекте есть такой модуль,и что теперь в нем редактировать нужно?)
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
надо уточнить. у тебя, если честно, на шоте не совсем понятно, можуль это или таки шаблон компонента.
посмотри, есть у тебя в папке шаблона папка HTML, а в ней mod_breadcrumbs
если есть, то зайди открой в ней файл default.php т сделай там
echo "ПРОВЕРКА";
до всяких условий и циклов.
если появится на странице в той области значит этот файл надо менять
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
неа,в шаблоне только 2 папки,html и CSS
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
а мозг включить?
"посмотри, есть у тебя в папке шаблона папка HTML, а в ней mod_breadcrumbs"

ВНУТРИ папки HTML есть что-нибудь?
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
Извини,опечатался.я имел ввиду,что папки HTML у меня нет,только images и СSS.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ок.
тогда сделай вышеописанную проверку  echo
в файле
\modules\mod_breadcrumbs\tmpl\default.php
только файл скопируй предварительно
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
Если я вас правильно понял,то вставить проверку надо в самом начале файла.Собственно после вставки ничего не происходит.
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
сайт на локалхосте :( скрин файла default.php?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
сохрани страницу в браузере тогда, прямо с открытым сайтом на странице с книгой и выложи на slil.ru
только быстро
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
нет, таки это отсюда
http://joomlaforum.ru/index.php/topic,84140.new.html
вдумчиво почитай, создай в папке шаблона папку HTML, скопируй туда, к примеру, данные из шаблона beez и посмотри багом результат
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
создал папку штмл,скинул туда папку com_content,обновил страницу,и собственно весь контент поехал в разные стороны)
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
да это понятно.
я тебе про принцип говорю. ты можешь скопировать в HTML оригинальные файлы из com_content и пофиксить этот момент
ищещь в тектовом поиске <span> , к примеру и добавляешь ему нужный класс. смотришь багом, где он вылез на странице
*

pormonik

  • Захожу иногда
  • 59
  • 0 / 0
ага,суть уловил,буду думать,большое спасибо
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Для чего нужны разделы и категории?

Автор lost

Ответов: 10
Просмотров: 7100
Последний ответ 26.04.2021, 15:12:31
от altvvc
Проблема со входом в Админ панель после переноса сайта

Автор Vlad Ermolaev

Ответов: 11
Просмотров: 4189
Последний ответ 12.12.2019, 15:48:25
от SeBun
[Решено] Проблема с авторизацией Invalid Token

Автор treX

Ответов: 100
Просмотров: 97143
Последний ответ 06.10.2019, 16:55:45
от PaLyCH
Как вывести все категории всех разделов на одной странице?

Автор genius

Ответов: 4
Просмотров: 2305
Последний ответ 22.01.2019, 08:38:30
от genius
Проблема c MobileJoomla

Автор alexmishka

Ответов: 0
Просмотров: 1777
Последний ответ 25.02.2018, 20:32:10
от alexmishka