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

umbabaraumba

  • Живу я здесь
  • 2415
  • 153 / 1
  • если помог можете поставить +
В карточке товара выводиться артикул . Есть товар с несколькими цветами и размерами.
Можно ли сделать чтоб при выборе цвета или размера сразу менялся артикул ?
Может  есть готовые решения, или кто-то уже делал такое ?
Заране спасибо за ответ .
Errare humanum est
Ubuntu по-русски
Пишу не сложные модули и компоненты, не дорого но не срочно
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Такого решения нет....  :( И наверное именно так как хотите Вы и не будет... Правда...
Напишите для  чего Вам нужно артикул менять что нибудь придумаем обязательно.....
*

umbabaraumba

  • Живу я здесь
  • 2415
  • 153 / 1
  • если помог можете поставить +
Напишите для  чего Вам нужно артикул менять что нибудь придумаем обязательно.....
Заказчик так хочет, посмотрите напримертут
при выборе цвета меняется артикул .
Errare humanum est
Ubuntu по-русски
Пишу не сложные модули и компоненты, не дорого но не срочно
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Ну мне тут какое решение видеться.
1. в VirtueMart есть такой плагин для custom fields по выбору цвета или размеров...
так вот можно его немного модифицировать и при создании товара назначать артикул не самому товару а именно комбинации custom fields.
т.е. есть товар к примеру КРУЖКА и не важно какой у него артикул. ....
теперь если выбрали
КРУЖКА - Красная + 150мл. = 0001 (Это Ваш артикул) 
КРУЖКА - Зеленая + 150мл. = 0002
и тд.
То есть артикул назначать в зависимости от комбинации кастомных полей. А в товаре Вы артикул не поменяете . так как он привязан к id товара. в базе данных.
а при оформлении заказа данные о товаре в том числе и артикул берется из базы а не из корзины заказа. И на лету поменять.... Не знаю в любом случае для этого нужны умные )) CUSTOMS FIELDS /
Ну и еще к примеру можно так сделать
id - prduct =302 = КРУЖКА;
КРУЖКА + Зеленая + 150мл.
    302    +    100    +    305   = 302-100-305 Вот такой как бы артикул можно создать )) т.е. первые три цифры  ID - продукта, 2 - ID - цвета, 3 - ID - объема или размера (L, XL, XXL);

И еще вопрос я так думаю что артикул в магазине будет привязан к шрих-коду..... НЕ вертуального .....товара ?
Как Ваше мнение ??
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Выбор размера одежды/обуви. Radio button вместо select. Решение

Автор kreker92

Ответов: 1
Просмотров: 2535
Последний ответ 30.05.2015, 12:13:38
от dj_lexa
Порядковый номер артикула

Автор Stasweb

Ответов: 12
Просмотров: 1461
Последний ответ 20.05.2015, 09:55:53
от Stasweb
Навигация. Переход на карточку товара при выборе категории

Автор iliya_art

Ответов: 8
Просмотров: 1202
Последний ответ 15.05.2015, 15:18:47
от iliya_art
Изменения размера при загрузке изображений VM2

Автор Ravilka

Ответов: 1
Просмотров: 945
Последний ответ 09.09.2013, 00:49:03
от fsv