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

pyh

  • Захожу иногда
  • 117
  • 11 / 0
Пожалуйста дай свои файлики \components\com_jshopping\. Я уже 4 неделю не могу исправить фильтр, поставил такие же версии как у тебя и внес твои правки, но безрезультатно. Вышли файлики, ПОЖАЛУЙСТА. leopolds2010@gmail.com

Файлы.

Работоспособность известна только для Joomla 2.5.1  + JoomShopping 3.5.0


[вложение удалено Администратором]
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Для тех, кто не хочет менять код ядра компонента, может пригодится готовое решение.
Молодцы, докопались все-таки до корня, когда я делал я н увидел возможности сделать отдельный аддон, возможно с обновлением компонента она появилась, возможно просто плохо смотрел.
*

Aladin

  • Осваиваюсь на форуме
  • 22
  • 1 / 1
Огромное спасибо за столь полезную доработку!  :D Всё ОК, но есть один момент. Joomla 2.5 / JoomShopping 2.6.1.. Мультивыбор работает, даже многоуровневые характеристики наверх прилепил, и вроде тоже работает. НЕ могу выбрать больше 5 значений в мультивыборе. Как только выбираю шестое значение, снимает выделение с предыдущего.

Возможно есть у кого минутка на решение проблемы!? *DRINK*


*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Возможно не хватает места в таблице для хранения более 5 значений, попробуй посмотреть что там творится.
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
в 3.9 будут встроенные мультихарактеристики.
Возмжно стоит дождаться и делать уже на безе стоковых ?
А то потом больше переделывать придется.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Попробуйте сделать запрос в базу:
ALTER TABLE `Префикс_jshopping_products` CHANGE `extra_field_ID Харатеристики` `extra_field_ID Харатеристики` VARCHAR( 255 ) NOT NULL
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

look96

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
НА ДЖШОП 3.4.2 сделал точно по мануалу, ничего не изменилось(
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Обновись до последнего релиза, говорят что в нем уже есть от производителей.
*

Alienoff

  • Захожу иногда
  • 186
  • 0 / 0
Есть. А можно как-то отключить?
Не очень удобно стало лично для меня выбирать (у меня на товар по одному значению характеристики) - раньше выбиралось из выпадающего списка, сейчас все значения открыты и нужно прокручивать, чтобы выбрать, что не оч удобно.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Есть. А можно как-то отключить?
Не очень удобно стало лично для меня выбирать (у меня на товар по одному значению характеристики) - раньше выбиралось из выпадающего списка, сейчас все значения открыты и нужно прокручивать, чтобы выбрать, что не оч удобно.
Не устанавливать версии выше 3.9.0. Если нет мультивыбора, то есть выпадающий список.
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

Alienoff

  • Захожу иногда
  • 186
  • 0 / 0
Не устанавливать версии выше 3.9.0. Если нет мультивыбора, то есть выпадающий список.

Другого варианта нет? Может разработчики предусмотрят возможность включения-отключения данной опции? А то не ставить версии выше - это отстать от прогресса
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
По хорошему конечно кажой характеристике надо галку мультивыбора присовокупить, делов-то строк на 15-20.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
По хорошему конечно кажой характеристике надо галку мультивыбора присовокупить, делов-то строк на 15-20.
Аркадий, в этом Вы конечно же прАвы. Однако разработчикам было проще сменить выпадающий список на мультивыбор, чем заморачиваться на создании и того и другого.
Так же не стоит забывать, что если характеристик много, а разработчики про этот факт забыли, то если есть проблемы с мультивыбором надо сделать как описано тут
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

Alienoff

  • Захожу иногда
  • 186
  • 0 / 0
По хорошему конечно кажой характеристике надо галку мультивыбора присовокупить, делов-то строк на 15-20.

Да, было бы хорошо
"Использовать для данной характеристики мультивыбор"
*

victorantoniak

  • Moderator
  • 1579
  • 185 / 2
  • JoomShopping Team
Исправим в новой версии.

Для характеристик стоит поле VARCHAR(100) - в редких случаях нехватит.
*

Alienoff

  • Захожу иногда
  • 186
  • 0 / 0
victorantoniak, было бы хорошо
*

StyleRocket

  • Давно я тут
  • 567
  • 4 / 3
Я не силен в характеристиках, где об этом можно почитать, для чего мультивыбор нужен?
И скажите, можно добавлять характеристику группе товаров, например через групповое изменение?
*

Emotion

  • Захожу иногда
  • 101
  • 0 / 0
В версии 3.11.4 Мультивыбор характеристик уже есть предусмотренный, но вот запарка фильтр  не хочет искать по этих характеристкиах, а ищит только если конкретная характеристика первая в списке.
А файл jtableauto.php отличаетса от файла верси 3.3.0 и того хака что пропсиан выше.
Не могли бы подказать что именно поменять в этот файле чтобы фильтр по мульти-характеристкиах кореектно отберал все товары
файл jtableauto.php прилагаю

[вложение удалено Администратором]
*

Emotion

  • Захожу иногда
  • 101
  • 0 / 0
Оказалось конфлик с плагино JoomShopping Plugin Product To Parent Category. Отключил начало отбирать все что надо.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Да, действительно данный плагин очень конфликтный. Попробуйте пожалуйста проверить на совместимость со второй версией плагина, возможно фильтр будет нормально фильтровать характеристики
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

chereushenko

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
скажите кто то задавался вопросом как выбрать для товаров помеченных галочкой  - одну характеристику и одну опцию... о как ?))
*

jorevo

  • Давно я тут
  • 595
  • 13 / 1
в 3.9 будут встроенные мультихарактеристики.

В смысле многоуровневые характеристики? Уже 3.15, а что то не видно их... или я плохо смотрел?
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
мульти и многоуровневые разные вещи :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

jorevo

  • Давно я тут
  • 595
  • 13 / 1
Я знаю про мультивыбор и многоуровневые характеристики... а вот про мультихарактеристики что то не слыхал. )
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
это одно и тоже...
после ввода разрабами стал называться мультивыбор :)
а так был плагин мультихарактеристик, о котором вы тоже спросили Линфуби ;)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться