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

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Знаки вопросы
« : 09.12.2010, 22:02:51 »
В Adsmanager 2.5, при добавлении нового обьявления  после сохранение вместо букв  (не везде) появлются знаки вопроса.
Как это исправить?
« Последнее редактирование: 09.12.2010, 22:06:20 от Михан123 »
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #1 : 09.12.2010, 23:58:58 »
Ну че ни у кого такого не было?
Вот картинка 
*

ilma55

  • Захожу иногда
  • 198
  • 5 / 0
Re: Знаки вопросы
« Ответ #2 : 10.12.2010, 11:49:21 »
эт кодировка. сохрани в "utf-8 без dom"
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #3 : 10.12.2010, 18:29:17 »
что именно еще сохранить,весь компонент и был сохранен ,и языковый файл тоже, я вот думаю может что то с БД?
*

ilma55

  • Захожу иногда
  • 198
  • 5 / 0
Re: Знаки вопросы
« Ответ #4 : 10.12.2010, 18:37:54 »
попробуй руками ввести текст а не вставлять!
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #5 : 10.12.2010, 20:24:07 »
Все руками и вводится,я в Php не шарю,но может при сохранении в textarea как то он в БД неправильно пишет?
Может есть какие мысли?
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #6 : 11.12.2010, 12:10:20 »
ну че ни одного профессионала на форуме не осталось,кто знает Php должен знать почему так получается? все файлы перекодировал UTF-8 ,они в принципе и так были в UTF-8
*

Diiimonn

  • Захожу иногда
  • 234
  • 29 / 0
Re: Знаки вопросы
« Ответ #7 : 11.12.2010, 12:45:44 »
Похожие симптомы при использовании функции preg_replace() и кодировки UTF-8 без модификатора /u

найдите в файлах эту функцию и поставьте модификатор.
например:
preg_replace('/не\s/u','','я не знаю php');
« Последнее редактирование: 11.12.2010, 12:52:50 от Diiimonn »
Создание расширений для Joomla
Skype: diiimonn
ICQ: 351181332
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #8 : 11.12.2010, 13:34:44 »
В файлах: adsmanager.class.php, adsmanager.php,adsmanager.html.php  функции preg_replace нет ,может я не там ищу?
*

Diiimonn

  • Захожу иногда
  • 234
  • 29 / 0
Re: Знаки вопросы
« Ответ #9 : 11.12.2010, 13:49:34 »
это всего лишь вариант...

а в phpmyadmin нормально отображается запись?

и еще может быть проблема в функции htmlspecialchars , по умолчанию она обрабатывает в iso-8859-1 и надо указать utf-8
Напимер:
htmlspecialchars("текст с кавычками",ENT_QUOTES,'UTF-8')
« Последнее редактирование: 11.12.2010, 14:26:21 от Diiimonn »
Создание расширений для Joomla
Skype: diiimonn
ICQ: 351181332
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #10 : 11.12.2010, 14:23:48 »
Да нормально,и когда обьявление редактируешь тоже нормально,как только сохранил,то опять знаки
*

Diiimonn

  • Захожу иногда
  • 234
  • 29 / 0
Re: Знаки вопросы
« Ответ #11 : 11.12.2010, 14:54:58 »
а еще, очень даже может быть, после выборки из БД твой текст встречается с функцией html_entity_decode() которая также требует указания кодировки
html_entity_decode($text,ENT_QUOTES,'UTF-8');
Создание расширений для Joomla
Skype: diiimonn
ICQ: 351181332
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #12 : 11.12.2010, 16:37:20 »
иЗВИНИТЕ ЗА ТУПИЗМ , НО НИ КАК ПОНЯТЬ НЕ МОГУ ,ФУНКЦИЮ html_entity_decode Я НАШЕЛ, ОНА ВО МНОГИХ МЕСТАХ ПОПОДАЕТСЯ
А ВОТ "$text" У МЕНЯ ВООБЩЕ НЕТ, И Я НЕ ЗНАЮ КУДА ВСЕ ЭТО МОЖНО ВСТАВИТЬ
*

Diiimonn

  • Захожу иногда
  • 234
  • 29 / 0
Re: Знаки вопросы
« Ответ #13 : 11.12.2010, 16:44:39 »
вам надо вставить только 'UTF-8' через запятую после ENT_QUOTES .
это ПРИМЕР
было:
html_entity_decode(здесь у вас чтото есть ,ENT_QUOTES);
Стало:
html_entity_decode(здесь у вас чтото есть ,ENT_QUOTES,'UTF-8');
Создание расширений для Joomla
Skype: diiimonn
ICQ: 351181332
*

Михан123

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Re: Знаки вопросы
« Ответ #14 : 11.12.2010, 17:39:15 »
Ладно че то я ни как ни пойму, после слова ENT_QUOTES  везде напихал 'UTF-8' а все одно и тоже, походу надо компонент менять
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Помогите решить ошибку

Автор azumi

Ответов: 21
Просмотров: 4607
Последний ответ 08.09.2020, 18:47:08
от gartes
Не работает кнопка отправить ?

Автор warlocksp

Ответов: 6
Просмотров: 1659
Последний ответ 10.03.2017, 11:34:50
от warlocksp
Joomla 1.5.23 обновление до самой новой версии

Автор AlexeyPavlov

Ответов: 6
Просмотров: 3039
Последний ответ 12.08.2015, 16:30:53
от SeBun
Где найти перечень отличий версий Joomla 1.5?

Автор ABCroNews

Ответов: 3
Просмотров: 9826
Последний ответ 28.07.2015, 12:35:00
от ShniderHost
При индексации добавляются фразы "porn"

Автор Tsepov

Ответов: 6
Просмотров: 2163
Последний ответ 08.02.2015, 12:41:43
от Mihanja80