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

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Кто создавал группу параметров именно в com_content подскажите как?, гуглил но есть только по модулям а вот насчет компонента говорят типа никак, потом делал и совсем запутался в MVK. требуется помощь.
и еще заодно в базе у материалов есть свободные поля типа images и т.д. зачем они и можно ли их использовать на свое усмотрения к примеру к этому полю реально подвести отдельное поле в материале images?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Ищи XML файл в админской папке в моделях com_content.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Ищи XML файл в админской папке в моделях com_content.
так он есть я знаю, но насколько я проанализировал все не просто создать создать группу т.к. насколько я понял группа отвечает например за кеширования а за что еще пока не понял, в контролере каждая группа с ее параметрами даже перечислена так например как в базе в attribs и show_title=
link_titles=
show_intro=
show_section=
link_section=
show_category=
link_category=
show_vote=
show_author=
show_create_date=
show_modify_date=
show_pdf_icon=
show_print_icon=
show_email_icon=
language=ru-RU
keyref=
readmore=

я ваще запутался

так же эти группы привязываются как к материалу а еще и основным настройкам материалы и пунктам меню
« Последнее редактирование: 22.01.2011, 16:50:59 от Artyomii »
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Так что в результате то должно получиться.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Так что в результате то должно получиться.
создать группу со своими параметрами, т.е. group="advanced" надо еще одну группу где будут новые параметры разных типов, у меня сейчас много дополнительных полей а теперь есть другая инфа не обязательная которую хочу выводить через параметры.
SmokerMan упоминал в своем блоге что в скором времени напишет про группы но так и не написал. Выводить параметры не хотелось бы через группы уже существующие, а так же хотелось бы эту группу и в форму добавления материалов с фронтеда вывести.
То что в XML создам группу это нечего не дает хоть как назови
Код
<params group="хоть пнем назову">
<param />
</params>
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
в мануале я что-то читал про группу other, но она ни где не упоминается в файлах да и с англисским тяжеловато, ладно буду шаманить есть идейки попробую :-)
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Так тебе в параметрах статьи выдвижную панельку надо?
administrator\components\com_content\admin.content.html.php
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Так тебе в параметрах статьи выдвижную панельку надо?
administrator\components\com_content\admin.content.html.php
причем тут панель, панель это вот
Код
			<?php
ContentView::_displayArticleStats($row, $lists);

$title = JText::_( 'Parameters - Article' );
echo $pane->startPane("content-pane");
echo $pane->startPanel( $title, "detail-page" );
echo $form->render('details');

$title = JText::_( 'Parameters - Advanced' );
echo $pane->endPanel();
echo $pane->startPanel( $title, "params-page" );
echo $form->render('params', 'advanced');

$title = JText::_( 'Metadata Information' );
echo $pane->endPanel();
echo $pane->startPanel( $title, "metadata-page" );
echo $form->render('meta', 'metadata');

echo $pane->endPanel();
echo $pane->endPane();
?>
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
почитай примерно о чем речь идет вот http://joomla-book.ru/development/extension/component-parameters
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Re: создания группы параметров в com_content
« Ответ #10 : 22.01.2011, 18:50:18 »
effrit я читаю про это решение, но в том то и смысл сделать все в com_content
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: создания группы параметров в com_content
« Ответ #11 : 22.01.2011, 18:53:03 »
про добавление своего поля есть материал на форуме...
но если полей - не одно, то какой смысл изобретать велосипед, если есть готовое решение?
гордо назвать потом Artyomii2content? )))
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Re: создания группы параметров в com_content
« Ответ #12 : 22.01.2011, 18:56:51 »
effrit доп поля уже давно есть и предостаточно и все ok! теперь с группой параметров разобраться осталось и внести туда параметры которые нужны, а про расширение там под мои цели почти стока же пилить придется, да отступать поздно)))) кстати почему то прочел куча материалов про создания компонентов но ни где не сказано как к ним прикрепляются эти группы параметров с самими параметрами
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Re: создания группы параметров в com_content
« Ответ #13 : 22.01.2011, 19:24:10 »
Как потом обновляться думаете? Вам для хака надо будет перелопатить компонент и таблицы в бд. Зачем такой головняк при обновлении?
*

Artyomii

  • Захожу иногда
  • 331
  • 10 / 5
Re: создания группы параметров в com_content
« Ответ #14 : 22.01.2011, 19:37:06 »
effrit 45 евро платить чтобы потом перепиливать под свои цели не разумно, впринципе не плохой компонент но для других целей.
jem777 основная масса шаблонизирована, я всегда к каждому сайту имею txt файл со всеми изменениями которые вносил и после обновления сверяю)))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как менять дату создания материала с фронтенда? Или как объединить ее с датой публикации?

Автор shturmanoid

Ответов: 3
Просмотров: 2304
Последний ответ 29.04.2016, 08:22:50
от flyingspook
Нужен код времени создания материалы

Автор lotosss

Ответов: 0
Просмотров: 1308
Последний ответ 24.04.2014, 16:05:12
от lotosss
Phoca Downdload ошибка создания разделе

Автор progmatest

Ответов: 0
Просмотров: 1168
Последний ответ 17.12.2013, 17:00:59
от progmatest
Почему в URL перед index.php?option=com_content&... подставляется категория??

Автор NlCK

Ответов: 4
Просмотров: 2461
Последний ответ 28.12.2012, 13:19:24
от NlCK
Измененение прав группы пользователей

Автор noname1697

Ответов: 1
Просмотров: 1299
Последний ответ 05.08.2012, 15:43:13
от noname1697