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

jrmobile

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
Добрый день, уважаемые профессионалы.

Пожалуйста, помогите разобраться.
В форме заказа, которая поправлена до одной страницы, перестала обновляться стоимость доставки и итоговая сумма при изменении способа доставки.
Стоимость доставки все время ноль.
http://joxi.ru/Vrw8Q6YfOlkWpm


Сайт тут.
http://motivashka-board.ru/product/view/1/14.html

Подскажите, пожалуйста, какая функция в ЖШ отвечает за пересчет цены доставки, чтобы хоть примерно знать в каком направлении копать.

Буду премного благодарен за помощь.


*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
http://prntscr.com/jowt4m

ищите ошибку в контроллере checkout методе ship_disable
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

jrmobile

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
http://prntscr.com/jowt4m

ищите ошибку в контроллере checkout методе ship_disable

Спасибо большое Вам за совет.
К сожалению, эта ошибка не имеет влияния.
Я сейчас починил ее, но проблема так и осталась.
Ошибка эта была вызвана моим костылем, которым я пытался починить вывод цены доставки.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
перестала обновляться стоимость доставки и итоговая сумма при изменении способа доставки
перестала - это же значит что раньше обновлялась сумма, верно? а после чего перестала?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

jrmobile

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
перестала - это же значит что раньше обновлялась сумма, верно? а после чего перестала?
Я не проверял никогда ее. Полагаю, что в оригинале работала.
Я по инструкции от умельца переделал постраничную форму заказу в одностраничную.
Полагаю, после этого и перестала.
Но не могу обнаружить в коде, где обработчик изменения цены включается и включался в оригинальной версии.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Я по инструкции от умельца переделал постраничную форму заказу в одностраничную.
ну так "по инструкции от умельца" видимо не предполагается, что методы доставки и/или оплаты могут иметь стоимость? :)

Но не могу обнаружить в коде, где обработчик изменения цены включается и включался в оригинальной версии.
цена рассчитывается аж на шаге доставки и сохранения доставки. а у вас только шаг адреса, и больше ничего нет. это так не будет работать, скорее всего ваше оформление просто не рассчитано на то, что доставки/оплаты могут иметь разные цены
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

jrmobile

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
ну так "по инструкции от умельца" видимо не предполагается, что методы доставки и/или оплаты могут иметь стоимость? :)
цена рассчитывается аж на шаге доставки и сохранения доставки. а у вас только шаг адреса, и больше ничего нет. это так не будет работать, скорее всего ваше оформление просто не рассчитано на то, что доставки/оплаты могут иметь разные цены

В этом и вопрос.
Там же все шаги в одном файле. Я достаточно внимательно правил. Искал и дальше ковыряю код на этапе сохранения доставки и не могу найти метод, который вызывается для пересчета стоимости.
Хочу его повесить на событие клика по радио вида доставки.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
В этом и вопрос.
Там же все шаги в одном файле. Я достаточно внимательно правил. Искал и дальше ковыряю код на этапе сохранения доставки и не могу найти метод, который вызывается для пересчета стоимости.
Хочу его повесить на событие клика по радио вида доставки.
Ищите дальше и обязательно найдете. Только это не так просто и быстро, как кажется - иначе люди не могли бы продавать свои OPC ^-^.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
смотрите модель checkoutshipping.php, там все расчеты, и при выводе и при сохранении
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

jrmobile

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
смотрите модель checkoutshipping.php, там все расчеты, и при выводе и при сохранении
Огромное Вам спасибо. Буду дальше искать.
*

jrmobile

  • Осваиваюсь на форуме
  • 27
  • 0 / 0
смотрите модель checkoutshipping.php, там все расчеты, и при выводе и при сохранении

Увидел, в той ветке, по которой делал одностранничник, что у всех там такая же проблема.
Еще поковыряюсь немного и если не найду, куплю готовый вариант.
Вы, кстати, тоже в той теме отметились.

[Решено] - Заказ на одной странице
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Стоимость доставки для нескольких товаров. Должна ли рассчитываться?

Автор goga_pgasovav

Ответов: 2
Просмотров: 901
Последний ответ 14.06.2025, 13:08:57
от victorantoniak
Срок поставки и доставки товара в итоге не суммируется при оформлении заказа

Автор brandonlang

Ответов: 0
Просмотров: 809
Последний ответ 27.02.2021, 13:41:44
от brandonlang
Список заказов (админка) - Вывести общий вес все товаров в заказе

Автор kit2m2

Ответов: 1
Просмотров: 795
Последний ответ 06.10.2020, 20:42:13
от Taatshi
Ошибка при выборе способа доставки.

Автор HLV_11

Ответов: 3
Просмотров: 822
Последний ответ 19.06.2020, 01:21:03
от HLV_11
Настройки доставки цифрового товара

Автор Edas

Ответов: 4
Просмотров: 817
Последний ответ 04.03.2019, 14:29:18
от dmitry_stas