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

timonnn

  • Захожу иногда
  • 366
  • 15 / 0
Возможно ли сделать возможность пользователям создавать свои сайты на поддоменах основного портала и товары синхронизировать с основной базой?

Должно это выглядеть вот так:
Пользователь регистрируется посредством компонента JUser
После регистрации (или в процессе) создается поле типа выбора имени для поддомена
И потом этот поддомен является профилем пользователя. Для профиля пользователя берем компонент Тач...
Все товары пользователь добавляет в своем личном кабинете на поддомене и они автоматом добавляются на основной сайт. А уже в каталоге товаров (на основном домене) ссылка на профиль пользователя ведет естественно на его поддомен...


Возможно ли такое? Кто может организовать? Приблизительную стоимость и условия можно писать в личку. Очень нужен такой функционал...
« Последнее редактирование: 01.03.2010, 15:19:10 от timonnn »
*

shitz

  • Захожу иногда
  • 164
  • 7 / 0
для начала надо решить, Ваш хостинг для поддомена заводит отдельную папку и туда требуется установить новую Joomla? Или есть иное решение?
*

timonnn

  • Захожу иногда
  • 366
  • 15 / 0
Хотелось бы все данные хранить в одной базе. То бишь Joomla будет ставиться только на основном домене...
*

Sergey Romanov

  • Moderator
  • 603
  • 19 / 0
По мойму это делается с помощью какогото компонента мульти сайт что ли. Дл новой копии Joomla надо установить в новую директорию несколько файлов  и это будет тотже сайт но с другими настройками, меню, .... там все настраивается.
Лучший ССК всех времен Cobalt
*

lexx006

  • Захожу иногда
  • 270
  • 8 / 3
Хотелось бы все данные хранить в одной базе. То бишь Joomla будет ставиться только на основном домене...

если Joomla будет стоять на основном домене и соответственно БД будет одна, то в чем идея поддомена?
дальше еще круче: не совсем понятно, куда же ты собираешься добавлять временные товары пользователя и затем синхронизировать их с основной БД, если в поддомене не планируется Joomla?
*

Sergey Romanov

  • Moderator
  • 603
  • 19 / 0
lexx, там есть системы, они используют одну базу но как то поинмают что одни статьи на одном поддомение, другие на другом. Это типа для бизнес директорий что бы каждая фирма имела свою домашнюю страничку.
Лучший ССК всех времен Cobalt
*

lexx006

  • Захожу иногда
  • 270
  • 8 / 3
в таком случае, есть такое решение:
ставится Joomla в поддомен, а в config.php указываешь имя сервера с основной БД.
а еще проще, копируется из основногно каталога. тогда и config.php не нужно править. :))))
« Последнее редактирование: 02.03.2010, 12:42:00 от lexx006 »
*

timonnn

  • Захожу иногда
  • 366
  • 15 / 0
в таком случае, есть такое решение:
ставится Joomla в поддомен, а в config.php указываешь имя сервера с основной БД.
а еще проще, копируется из основногно каталога. тогда и config.php не нужно править. :))))

Это не будет работать. Т.к. тогда на поддомене будет идентичный сайт основному. Любые изменения на нем будут изменяться на другом. Это будет просто клон...

В принципе меня устроит установка новой Джумлы на субдомены, вот только как синхронизировать таблицы??
А префиксами таблиц такое возможно реализовать?
« Последнее редактирование: 02.03.2010, 21:21:55 от timonnn »
*

lexx006

  • Захожу иногда
  • 270
  • 8 / 3
да, будет именно клон сайта, но... с разными входами, разными интерфейсами и разными скриптами.
насколько я понял, нужно было именно это. в противном случае, пользователь не будет видеть данных из Основной БД.

итак, ты хочешь хранить товары ПОЛЬЗОВАТЕЛЯ в одной БД и затем перебрасывать их в другую?

я не буду спрашивать у тебя, ЗАЧЕМ ТЫ ХОЧЕШЬ это делать, просто скажу, что я могу сделать это.



Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать вывод материала в виде блога а не таблицой?

Автор koyot777

Ответов: 3
Просмотров: 6701
Последний ответ 12.12.2012, 12:44:18
от koyot777
Можно сделать добавление из списков области-города

Автор nick71

Ответов: 1
Просмотров: 2220
Последний ответ 21.10.2011, 18:13:06
от 2gorodabiz
Как сделать такой вывод категорий, подкатегорий?

Автор timonnn

Ответов: 14
Просмотров: 5754
Последний ответ 21.03.2011, 16:08:37
от timonnn
можно ли организовать модуль топ-пользователей Mighty Touch?

Автор thief

Ответов: 5
Просмотров: 2820
Последний ответ 12.02.2011, 00:50:59
от thief
Как сделать, чтобы краткое содержание новости не отображалось в полной новости?

Автор koopfish

Ответов: 15
Просмотров: 6817
Последний ответ 20.01.2011, 17:34:49
от Nusinam