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

THE KILLERS

  • Давно я тут
  • 932
  • 28 / 0
Собсно надо вывести один модуль только на одной странице и еще один - только на одной другой странице. Никак не допру как это сделать. Сначала думал надо копать в сторону статической страницы-типа создать ее, потом создать пункт меню со ссылкой на эту статическую страницу и вывести вывести модуль только на этой странице. Но чтобы создать статическую страницу надо вроде создать статический материал, т.е. статическую страницу-статью (или может я ошибаюсь)? Если это так, то мне не нужен статический материал, мне нужна именно статическая страница, чтобы вывести на ней модуль. Как можно такое сделать?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
мало ли что не нужен )
как ты собираешься по-другому пункт меню создавать?
модуль то к пункту привязываться будет, а "пункт, ведущий вникуда" ещё не придумали.
два статичных материала, два пункта меню, два модуля
*

valagoff

  • Давно я тут
  • 984
  • 110 / 0
ну конечно можно заморочиться и сделать условие от адреса в адресной строке, но зачем? не пойму.
*

HYBRID

  • Захожу иногда
  • 228
  • 47 / 0
  • Они захватят мир
« Последнее редактирование: 07.10.2010, 18:49:58 от HYBRID »
http://hybrid-lab.com - лаборатория
*

PashkaRu

  • Давно я тут
  • 941
  • 91 / 4
  • Дедушка Игнат, изыди ((((
блиннн.. ну скока мона уже рекламировать...
http://nonumber.nl
Advanced Modules Manager

Позволяет выводить или не выводить модули где угодно. Привязка к меню, к разделам, к категориям, к браузерам, к авторизованным юзерам, к гостям, к материалам (id через запятую) и ещ и еще и еще.

вставка модуля - там же, Modules Anywhere
+
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
да не.
он просто двоечник-до сих пор не научился скрывать по условию вызов компонента.
на второй год оставлять придётся, если не исправится )
*

PashkaRu

  • Давно я тут
  • 941
  • 91 / 4
  • Дедушка Игнат, изыди ((((
Гибрид, точно.
Продукция НоНамбер входит в список первых компонентов/плагинов, обязательных к установке.

Плюс еще отличная штука - Add to menu
+
*

PashkaRu

  • Давно я тут
  • 941
  • 91 / 4
  • Дедушка Игнат, изыди ((((
Эффрит, ты, смотрю, еще не знаком с нонамбер? стыдно! : )
Они же одни из самых  the best : )
+
*

PashkaRu

  • Давно я тут
  • 941
  • 91 / 4
  • Дедушка Игнат, изыди ((((
AMM - это совершенно не лишнее. Собссно, ваще не понимаю, почему такая штука не входит в ядро Joomla для управлениями модулями..
+
*

THE KILLERS

  • Давно я тут
  • 932
  • 28 / 0
Поставил эти модули, собсно все равно не помогло. Почему в жумле нету ссылки на модуль когда создаешь пункт меню (по аналогии с компонентом)-вот я имел ввиду типа этого.
*

PashkaRu

  • Давно я тут
  • 941
  • 91 / 4
  • Дедушка Игнат, изыди ((((
какие "эти" модули? тут про модули вообще ни слова никто не говорил, тут речь про плагины.

делается материал, в него с помощью modules anywhere вставляется модуль (предварительно созданный). все.
+
*

THE KILLERS

  • Давно я тут
  • 932
  • 28 / 0
а дак это типа плагина "Load module"? Впринципе идея, наверна я так и сделаю-вставлю модуль в материал ибо наверна по другому никак нельзя.
*

valagoff

  • Давно я тут
  • 984
  • 110 / 0
ибо наверна по другому никак нельзя.
можно писать условие в шаблоне выводить контент или модуль в определенной позиции
*

ivan889

  • Новичок
  • 7
  • 0 / 0
  • 1
Advanced Module Manager работает только для Joomla 1.5 и выше?
А возможно найти версию для Joomla 1.0 или похожий компонент?
Спасибо заранее.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать появление случайных картинок из пяти разных категорий?

Автор Katy93

Ответов: 2
Просмотров: 2903
Последний ответ 03.05.2021, 21:34:20
от sivers
Как сделать бэкап сайта

Автор egorovv

Ответов: 8
Просмотров: 7890
Последний ответ 06.06.2020, 12:09:43
от SeBun
Как вывести все категории всех разделов на одной странице?

Автор genius

Ответов: 4
Просмотров: 2305
Последний ответ 22.01.2019, 08:38:30
от genius
Ошибка при загрузке модулей:MySQL server has gone away

Автор svskach

Ответов: 13
Просмотров: 6591
Последний ответ 31.01.2018, 10:56:15
от Evrokub
Вопрос о правильности разметки тегами на странице

Автор dpy1995

Ответов: 10
Просмотров: 6414
Последний ответ 09.01.2018, 12:49:25
от kungurskiy