Новости 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 Ответов
  • 3162 Просмотров
*

Blessure

  • Захожу иногда
  • 119
  • 4 / 0
Всем доброй день или вечер.
У меня есть задача и я честно не знаю как это решить.

И так.
У меня установлена JomSocial 1.5.*** как мы знаем пользователи которые зарегистрировались могут отправлять друг другу сообщения и вот с этого момента у меня происходит проблема.
Задача.
Мне необходимо узнать кто из пользователей делает рассылку через социальную сеть. (реклама ссылки фин предложения и так далее)
Есть ли возможность ограничить по ключевым словам + номер с выше 3 цифр и так далее внутри системы в отправке сообщений.

Я знаю что по умолчанию есть только Количество допустимых сообщений в день но этого мало.

Дайте дельный совет.Всем огромное спасибо за помощь.
« Последнее редактирование: 30.08.2010, 17:15:42 от kharol »
*

Deni

  • Захожу иногда
  • 61
  • 2 / 0
Re: Нестондартное решение.
« Ответ #1 : 27.02.2010, 23:34:12 »
не пробовал искать компоненты из цикла "admin tools", может есть готовые решения для этого?
 Интересная тема вообще
*

Zombeee

  • Захожу иногда
  • 328
  • 55 / 3
Re: Нестондартное решение.
« Ответ #2 : 28.02.2010, 07:37:00 »
не пробовал искать компоненты из цикла "admin tools", может есть готовые решения для этого?
 Интересная тема вообще

думаю что готовых решений нет, надо писать самим...
*

Blessure

  • Захожу иногда
  • 119
  • 4 / 0
Re: Нестондартное решение.
« Ответ #3 : 28.02.2010, 13:11:51 »
 
не пробовал искать компоненты из цикла "admin tools", может есть готовые решения для этого?
 Интересная тема вообще
Да согласен тема актуальная.Особено если сайт многофункциональный то очень нужная вещь.
Я конечно ограничил пока пользователей на несколько сообщений но это не вариант. Это крайний выход из положения.
Сделать бы так
У пользователя который шлёт сообщения всё уходит со всеми сылками а пользователь который получает вместо сылки звёздочки + отщет администрации Это былобы бомба вещь.
Искать непробовал чесно говоря.
*

Zombeee

  • Захожу иногда
  • 328
  • 55 / 3
Re: Нестондартное решение.
« Ответ #4 : 28.02.2010, 16:49:52 »
Да согласен тема актуальная.Особено если сайт многофункциональный то очень нужная вещь.
Я конечно ограничил пока пользователей на несколько сообщений но это не вариант. Это крайний выход из положения.
Сделать бы так
У пользователя который шлёт сообщения всё уходит со всеми сылками а пользователь который получает вместо сылки звёздочки + отщет администрации Это былобы бомба вещь.
Искать непробовал чесно говоря.

preg_replace вам в помощь:)
*

Blessure

  • Захожу иногда
  • 119
  • 4 / 0
Re: Нестондартное решение.
« Ответ #5 : 28.02.2010, 22:26:58 »
preg_replace вам в помощь:)
Есть какая статейка.
Или подскажите как реализовать.
Нашёл вот про это чудо http://php.net/manual/en/function.preg-replace.php.
Но непонял чтото может кто подскажет
« Последнее редактирование: 28.02.2010, 22:32:38 от Blessure »
*

Zombeee

  • Захожу иногда
  • 328
  • 55 / 3
Re: Нестондартное решение.
« Ответ #6 : 01.03.2010, 07:59:05 »
эта функция находит совпадения в тексте по регулярному выражению и делает замену на то, что вам нужно:) но это только стандартная php функция, до реализации конечно варианта надо ещё немало помозговать :)
*

Blessure

  • Захожу иногда
  • 119
  • 4 / 0
Re: Нестондартное решение.
« Ответ #7 : 01.03.2010, 19:17:48 »
Да мне надо всего 2 функции www.***** заменить на ***.******* и цифры на с выше 3 подрят на ****.

Хотя вру.

Ещё отщёт какой нибудь или копия админу.
*

Blessure

  • Захожу иногда
  • 119
  • 4 / 0
Re: Нестондартное решение.
« Ответ #8 : 01.03.2010, 19:18:41 »
Есть решение за $$$ у меня мозг так не варит.
*

Zombeee

  • Захожу иногда
  • 328
  • 55 / 3
Re: Нестондартное решение.
« Ответ #9 : 02.03.2010, 04:58:01 »
такая у вас серьезная проблема с этим?:) пока честно некогда этим заниматься, но в перспективе всё может быть, во всяком случае такая функция не будет лишней...
*

Blessure

  • Захожу иногда
  • 119
  • 4 / 0
Re: Нестондартное решение.
« Ответ #10 : 02.03.2010, 12:39:34 »
Ну присутствует сайт очень многофукционален и нужно гораничить некоторые возможности в частности именно эту .
*

andreysmolin

  • Захожу иногда
  • 274
  • 2 / 2
  • -=полёт нормальный=-
а как вообще читать сообщения пользователей? !
*

Trass

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