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

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Здравствуйте! Нужен либо код постраничной навигации, либо модуль/плагин (что будет). т.е. что бы можно было переключать страницы, и при этом что бы сайт не обновлялся. Это нужно мне для одного из МОДУЛЕЙ.  Примерно как здесь на сайте: http://demo.rockettheme.com/feb10/ (Смотрите модуль Latest Extras)

Если кто не понял - объясняю. К примеру у меня есть блок трансляции (рис 1) и там в нем 16 трансляций (на рисунку лишь одна). Получается, что модуль будет занимать много места, и сам по себе будет длинный, что не есть гуд. По этому, в данном случаи будет очень удобна постраничная навигация (пример рис 1), благодаря которому, например на каждой странице будет выводится по 5 трансляций (или что то в этом роде). Как все это будет выглядеть - попытался нарисовать в одном из редакторов):


Рис 1.

Ну работу самой постраничной навигации уже описывать не буду, т.к. она известна всем...

Заранее благодарен любой помощи!
« Последнее редактирование: 20.08.2010, 23:03:33 от Nazaretto »
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
greatjoomla.com/extensions/plugins/core-design-ajax-pagebreak-plugin.html
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
greatjoomla.com/extensions/plugins/core-design-ajax-pagebreak-plugin.html
Спасибо! Плагин установил и включил! Но как он работает? Т.е. как вывести желаемую навигацию?
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
надо еще установить плагин с их сайта  с их глобальными скриптами,поищите внимательно
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
надо еще установить плагин с их сайта  с их глобальными скриптами,поищите внимательно
Увы, но английский я не знаю. К тому же, не знаю какие плагины нужны. Киньте сюда, ПОЖАЛУЙСТА, ссылки! У Вас хоть какое-то представление имеется...
Заранее благодарю!
С меня будет еще один +!
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
greatjoomla.com/extensions/plugins/core-design-scriptegrator-plugin.html это
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Установил и включил. Но ничего не изменилось. Как было - так и осталось. Мало того, что выбрасывает ошибку на странице ( Please enable jQuery library in Core Design Scriptegrator plugin configuration. ) так еще и не известно можно будет ли всунуть её в один из модулей сайта?
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
ну это ваши проблемы,все работает. если материал на 2 страницы,то  можно переходить  на вторую без перезагрузки всей стр.
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
включите jquery в плагине номер 2
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
включите jquery в плагине номер 2
Включил. Ошибок теперь не выбивает, но и работы данных плагинов я пока так и не заметил(

...если материал на 2 страницы,то  можно переходить  на вторую без перезагрузки всей стр.
А... так эта навигация работает лишь внутри материала? Странно.. но на сайте есть длинные материалы, но, тем не менее, навигация не выводилась...

Благодарю за ответ!
*

Mitrich

  • Захожу иногда
  • 289
  • 524 / 13
  • Все можно. Но сначала учиться, учиться и учиться.
Цитировать
если материал на 2 страницы,то  можно переходить  на вторую без перезагрузки всей стр.
Я так понял нужна AJAX пагиация в замен существующей
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
да,я вроде дал ссылку на рабочий плагин
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Я так понял нужна AJAX пагиация в замен существующей
Вообще-то, нужна постраничная навигация НЕ ДЛЯ МАТЕРИАЛОВ! А что бы вставить её вниз нужного модуля. Понимаете?
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
gavick tabs manager
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
gavick tabs manager
В соседней теме вы писали что это переключатель модулей. Сейчас же - постраничная навигация?
Или вы предлагаете использовать этот модуль в 2-х целях?
*

Mitrich

  • Захожу иногда
  • 289
  • 524 / 13
  • Все можно. Но сначала учиться, учиться и учиться.
Цитировать
Вообще-то, нужна постраничная навигация НЕ ДЛЯ МАТЕРИАЛОВ! А что бы вставить её вниз нужного модуля. Понимаете?
Не понимаю.

Вот не вижу перед собой задачи хоть убей.

Соберись с мыслями и озвучивай задачу от начала и до конца.
Не отнимай у людей время
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Не понимаю.

Вот не вижу перед собой задачи хоть убей.

Соберись с мыслями и озвучивай задачу от начала и до конца.
Не отнимай у людей время
Изменил первый пост с нужным объяснением. Думаю, теперь у Вас появилось хоть какое-то понятие :)
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Ну что?
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
блин , вы сами определитесь , вы же говорили  ,что заварили всё это ради переключателя модулей ? Я его вам дал. Всё равно как я вижу вы пока ещё  не в состоянии переделать что-либо под себя
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
блин , вы сами определитесь , вы же говорили  ,что заварили всё это ради переключателя модулей ?
Это вообще другая тема, которая совсем не касается переключателей модулей. В шапке написано же, что нужна пост. навигация...
*

rubasket

  • Захожу иногда
  • 346
  • 13 / 1
  • RuBasket.com
Цитировать
Это нужно мне для одного из МОДУЛЕЙ
и ссылки-то вроде я выписал...
greatjoomla.com/extensions/plugins/core-design-ajax-pagebreak-plugin.html
greatjoomla.com/extensions/plugins/core-design-scriptegrator-plugin.html
Только я знаю,что могу (C) Джон Локк 
Why him ?Mmm? What  about me? БЕНЖАМИН Л
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
и ссылки-то вроде я выписал...
greatjoomla.com/extensions/plugins/core-design-ajax-pagebreak-plugin.html
greatjoomla.com/extensions/plugins/core-design-scriptegrator-plugin.html
Все поставил, и сделал как ты писал ранее. Тем не менее, оно нигде не выводится) Работает лишь обычная пост. навигация, и то, с материалами а не модулем...
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Раз нету постраничных навигаций для модулей, то буду вынужден поставить обычный AJAX переключатель модулей, и этим почти создам эффект пост.навигации.. только вверху)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вставить JavaScript в Joomla 3.4. Нужен работающий плагин?

Автор uniqcle

Ответов: 3
Просмотров: 1892
Последний ответ 22.10.2015, 08:10:38
от arma
Форма обратной связи Perfect AJAX Popup Contact

Автор Елёсик

Ответов: 3
Просмотров: 1860
Последний ответ 21.05.2015, 18:20:53
от Biss
AJAX загрузка страниц

Автор kolhoz

Ответов: 1
Просмотров: 1445
Последний ответ 21.11.2014, 11:03:32
от ELLE
Типо AJAX Header Rotator для Joomla 3

Автор tastak87

Ответов: 1
Просмотров: 1683
Последний ответ 09.04.2014, 15:15:12
от Grigory S.
Выезжающая панель Contact Us с AJAX

Автор createa

Ответов: 2
Просмотров: 1958
Последний ответ 07.09.2013, 17:31:33
от createa