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

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Подскажите пожалуйста, как сделать так, чтоб покупать могли только зарегестрированные пользователи или любая группа пользователей. а для гостей сайта отображался как каталог. ну или проще сказать, чтобы кнопка купить была видна только зарегестрированным.
*

victorantoniak

  • Moderator
  • 1579
  • 185 / 2
  • JoomShopping Team
Configuration / category/product / Show price
*

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
не могу найти
Joomla 2.5 JoomShopping 3.2.7
если в настройках самого магазина, то там тоже не вижу такого пункта

поясню: нужно, чтобы кнопку "КУПИТЬ" видели только зарегистрированные пользователи. регистрация после нажатия этой кнопки не подходит
« Последнее редактирование: 15.04.2013, 12:35:28 от kentspb1 »
*

victorantoniak

  • Moderator
  • 1579
  • 185 / 2
  • JoomShopping Team
У вас старая версия.
*

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
версию обновил до 3,11,4, но такой возможности не нашёл. появилась возможность показывать цену для зарегистрированных, а мне нужно, чтоб цену видели все, а кнопка купить была только у зарегестрированных. возможно такое?
*

nevigen

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

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
« Последнее редактирование: 16.04.2013, 17:19:08 от ELLE »
*

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
а посмотреть в шаблоне проверку на статус пользователя при выводе цены и применить к кнопке купить ?
здесь? components/com_jshopping/templates/default/products
если не затруднит, можеть сказать как найти и что поменять?
*

nevigen

  • Moderator
  • 10451
  • 863 / 25
  • http://n*****n.com
карточка товара /components/com_jshopping/templates/default/product/product_default.php
товар в списке категории /components/com_jshopping/templates/default/list_products/product.php

что править чуть выше Елле дала тему где почитать об условии для авторизированных а найти сможете сами.
нет.. значит нет..
что могу сказать помочь не значит сделать за вас.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
спасибо, буду пробовать!
если не сложно еще один вопрос. как в админке отсортировать подкатегории по алфавиту? вручную не очень удобно, так как их больше 1000 шт.
*

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
большое спасибо! кнопка теперь только для зарегистрированных!
очень помогли!

нет доступа, чтоб плюсовать(

+ nevigen
+ ELLE
*

nevigen

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

kentspb1

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
спасибо!
это и будет десятым)))))))))))))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться