Новости 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 Ответов
  • 2985 Просмотров
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Конфликт с jQuery
« : 17.01.2013, 01:58:00 »
Вот сайт http://nfs-world.com.ua/
Модуль - Lof ArticlesSlideShow Module
Все работало хорошо, а в друг перестало, вот как видите ничего не отображает.
Есть какие предложения?
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: Конфликт с jQuery
« Ответ #2 : 17.01.2013, 02:02:44 »
Что одной темы мало? Может в бан на 3 дня как злобного спамера?
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #3 : 17.01.2013, 02:04:01 »
в модули или в общих настройках?Что то не пойму
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #4 : 17.01.2013, 02:05:13 »
Что одной темы мало? Может в бан на 3 дня как злобного спамера?

Я извиняюсь, там не в той категории...
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
Re: Конфликт с jQuery
« Ответ #5 : 17.01.2013, 02:07:14 »
в модули или в общих настройках?Что то не пойму
посмотрите в модуле - может с собой тянет он JQuery. Иначе в шаблоне подключать
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #6 : 17.01.2013, 02:09:16 »
в том, то и дело, что там ничего про Jquery
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #7 : 17.01.2013, 18:51:43 »
Как его подключить через шаблон?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Конфликт с jQuery
« Ответ #8 : 17.01.2013, 18:57:18 »
Код: php-brief
<?php
$js = "if(!window.jQuery)
document.write(unescape('<script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js\">%3C/script%3E'));";
JFactory::getDocument()->addScriptDeclaration($js);
?>
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #9 : 17.01.2013, 19:15:41 »
Код: php-brief
<?php
$js = "if(!window.jQuery)
document.write(unescape('<script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js\">%3C/script%3E'));";
JFactory::getDocument()->addScriptDeclaration($js);
?>
этот код куда вставлять?
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #11 : 17.01.2013, 19:25:42 »
теперь модуль последних тем, стал слайдером  ^-^
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #12 : 18.01.2013, 17:32:57 »
помогите пожалуйста, отблагодарю
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Конфликт с jQuery
« Ответ #13 : 18.01.2013, 18:21:46 »
Собственно что вам помогать. У вас напрочь отсутствует понятие конструкции сайта
Накидали все к ряду и получилось то, что имеете. Перед созданием сайта надо определятся какие фреймворки, скрипты и библиотеки вы будете использовать. Не мешало иметь и свою коллекцию. Посмотрите на исходный код страницы вашего сайта. Это ***код. Не разбираетесь, но и вешать все сразу не надо. Надо понимать, что вы используете Mootools или Jquery. А вот вам вопрос, зачем вам и то и другое. А теперь мучаетесь как разобрать кучу дерьма своего. Проблем же ваша банальная, заключается в конфликте Mootools или Jquery. Ковыряться в этом нет никакого желания. Идите в коммерческий раздел, может там кто и захочет в этой куче покопаться
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #14 : 18.01.2013, 19:27:27 »
Я где то слышал можно отключить Mootools, где?
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #15 : 18.01.2013, 19:28:34 »
и как можно подправить код?
Неужели все заново?
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #17 : 18.01.2013, 19:49:18 »
Боюсь идти в коды, так как сделаю только хуже.
А если тему перенести в другую категории, что то поможет?
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #18 : 19.01.2013, 20:01:38 »
Заметил, что если убрать галочку "Включить пред. загрузку" то появляются слайды, но они недогружены и вообще с ошибками
*

modest

  • Захожу иногда
  • 132
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #19 : 19.01.2013, 20:23:58 »
Ребята, гуглил, нашел в теме вопрос, но там ответ не дали, тут показано ошибку, может по ней сможете помочь?

Цитировать
великолепный модуль Lof ArticlesSlideShow Module работать не хочет, отладчик дает ошибку
здесь
Код PHP
1
var _lofmain =  $('lofass202');
SCRIPT438: Объект не поддерживает это свойство или метод
и здесь
Код PHP
1
this.style[l]=k;
SCRIPT87: Недопустимый аргумент.
*

BVV

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Конфликт с jQuery
« Ответ #20 : 19.12.2017, 08:06:54 »
Доброго времени суток!
Подскажите как эту беду исправить.
создал внутренний сайт, все работало до выявления того, что у тех, кто подключен через прокси к инету у них все слетает с конструктором SP Page Builder. на IE вся беда. в др. браузерах работает. Админ сказал, что исправляй все под IE.
бедакурит на это:

SCRIPT438: Объект не поддерживает свойство или метод "querySelectorAll"

Файл: sppagebuilder.js, строка: 1874, столбец: 22
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Компонент Commedia (неизвестный конфликт на сайте)

Автор Методист

Ответов: 2
Просмотров: 3586
Последний ответ 06.11.2022, 07:25:57
от ecolora
Кнопка «Наверх»: как создать с CSS и jQuery

Автор leo78

Ответов: 4
Просмотров: 1890
Последний ответ 25.06.2021, 13:01:58
от leo78
Как создать плагин c кодом JQuery?

Автор leo78

Ответов: 0
Просмотров: 950
Последний ответ 19.05.2021, 12:00:10
от leo78
конфликт скриптов

Автор alsa

Ответов: 5
Просмотров: 1679
Последний ответ 22.07.2016, 23:40:16
от alsa
Конфликт двух модулей в материале

Автор kreativ

Ответов: 1
Просмотров: 1159
Последний ответ 25.04.2016, 07:49:38
от sibdes