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

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Перенесла сайт на другой хостинг и сразу по вылезало куча ошибок
www/libraries/loader.php on line 161
www/administrator/components/com_comprofiler/plugin.foundation.php on line 112
www/administrator/components/com_comprofiler/plugin.class.php on line 193
www/index.php on line 15

С чем этом может быть связанно?
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #1 : 29.11.2010, 19:44:27 »
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 2044184 bytes) in /opt/users/home/wwwroot/сайт/www/administrator/components/com_comprofiler/plugin.foundation.php on line 112

Fatal error: Class 'JLoader' not found in /opt/users/home/wwwroot/сайт/www/libraries/loader.php on line 161
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Re: куча ошибок после переноса сайта
« Ответ #2 : 29.11.2010, 19:49:13 »
Не хватает памяти?
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #3 : 29.11.2010, 19:56:05 »
Стояло htaccess переименовать в .htaccess и он пропал в фтп клиенте, но если добавить такой же файл(.htaccess) то он сразу предлагает заменить старый, в .htaccess  стоит php_value memory_limit 32M
в index.php шаблона ставила ini_set('memory_limit', '32M');
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Re: куча ошибок после переноса сайта
« Ответ #4 : 29.11.2010, 19:58:59 »
В фтп клиенте - укажите показать скрытые файлы.
Найдете .htaccess и в нем попробуйте закомментировать строку Options +FollowSymLinks так #Options +FollowSymLinks

*

Sulpher

  • Живу я здесь
  • 2136
  • 402 / 16
  • Шаблоны и расширения Joomla
Re: куча ошибок после переноса сайта
« Ответ #5 : 29.11.2010, 20:00:06 »
А какая версия PHP, MySQL на сервере? Для стабильной работы Joomla 1.5 и её компонентов требуется, чтобы версии PHP и MySQL были не ниже 5-х версий.

php_value memory_limit желательно выставить максимальный, насколько позволяет хостинг (можно посмотреть через phpinfo)
Нехватка памяти возникает обычно при распаковке расширения на сервере при установке, во фронте должно работать. Также можете попробовать залить распакованный компонент в папку /tmp и установить расширение не из файла, а из папки. (потом не забудьте почистить папку /tmp). Разумеется, перед установкой расширения нужно сделать резервную копию сайта.
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #6 : 29.11.2010, 20:18:26 »
В фтп клиенте - укажите показать скрытые файлы.
Найдете .htaccess и в нем попробуйте закомментировать строку Options +FollowSymLinks так #Options +FollowSymLinks


Не помогло
А какая версия PHP, MySQL на сервере? Для стабильной работы Joomla 1.5 и её компонентов требуется, чтобы версии PHP и MySQL были не ниже 5-х версий.

php_value memory_limit желательно выставить максимальный, насколько позволяет хостинг (можно посмотреть через phpinfo)
Нехватка памяти возникает обычно при распаковке расширения на сервере при установке, во фронте должно работать. Также можете попробовать залить распакованный компонент в папку /tmp и установить расширение не из файла, а из папки. (потом не забудьте почистить папку /tmp). Разумеется, перед установкой расширения нужно сделать резервную копию сайта.
Версии 5е
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #7 : 29.11.2010, 22:35:17 »
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 2044184 bytes) пропадает сейчас
Fatal error: Call to undefined function define() in /opt/users/home/wwwroot/сайт/www/index.php on line 17 и появляется эта =(
*

Sulpher

  • Живу я здесь
  • 2136
  • 402 / 16
  • Шаблоны и расширения Joomla
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #9 : 30.11.2010, 11:20:30 »
При авторизации , захода на форум... Даже в админку иногда пускает, но если зайду в расширения-кунена к пример, то появится ошибка
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Re: куча ошибок после переноса сайта
« Ответ #10 : 30.11.2010, 11:48:17 »
А на другом хостинге все работало нормально?
При переносе файлики не могли потеряться? Все проверили?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: куча ошибок после переноса сайта
« Ответ #11 : 30.11.2010, 11:54:02 »
Самое загадочное вот это Call to undefined function define()
define() родная функция PHP для установления именованной константы от 3 до 5 версии и undefined быть точно не может при нормальной работе PHP.

А это Fatal error: Class 'JLoader' not found на 90% файл потеряли.
« Последнее редактирование: 30.11.2010, 11:58:51 от Lex »
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #12 : 30.11.2010, 12:15:55 »
хм, ну те файлы все есть ... Чуть позже еще раз проверю, но сомневаюсь что причина в этом, на прошлом хосте все прекрасно работало
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #13 : 30.11.2010, 12:42:20 »
Сейчас пишет только
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 1447080 bytes) in /opt/users/home/wwwroot/сайт/www/administrator/components/com_comprofiler/plugin.foundation.php on line 116
Хотя внизу шаблона в index.php стоит ini_set('memory_limit', '32M'); может я его не туда поставила? Куда лучше? в .htaccess тоже стоит
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Re: куча ошибок после переноса сайта
« Ответ #14 : 30.11.2010, 14:18:45 »
ini_set может стоит убрать вообще? Мой сервер, например,  этого не любит. Выпадает сразу.))
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #15 : 03.12.2010, 12:20:07 »
Сейчас попробую
« Последнее редактирование: 03.12.2010, 12:27:38 от Loasa »
*

Loasa

  • Захожу иногда
  • 206
  • 1 / 0
Re: куча ошибок после переноса сайта
« Ответ #16 : 03.12.2010, 12:38:13 »
Directive         Local Value          Master Value
memory_limit   16M            256M
На хостинге пораметры
Memory Size    29,360,056 Bytes
*

jem777

  • Завсегдатай
  • 1666
  • 119 / 2
Re: куча ошибок после переноса сайта
« Ответ #17 : 03.12.2010, 13:01:31 »
Значит на хостинге у вас на скрипт выделено 16Мб памяти. И его катастрофически не хватает, о чем и пишет вам честно PHP. Причем конкретно кому его не хватает, а именно CommunityBuilder, который видимо и валит систему.

И не стоит надеяться на .htaccess со строчкой php_value memory_limit 32M, если сервер на это не настроен, то эта директива для вас вообще не будет работать. Скорее всего так и есть, а то как начнут себе все память бесконтрольно увеличивать...так что можете там себе хоть гигабайт нарисовать, толку не будет.

Как вариант, можете проверить, установив на сайт чистую Joomla. Она должна завестись на 16Мб памяти.

Единственный вариант - говорить с хостером на эту тему. Самостоятельно его вы не обойдете, если не имеете доступа к серверу.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Чем лучше всего делать резервные копии сайта?

Автор 7Azimuth

Ответов: 115
Просмотров: 59019
Последний ответ 29.11.2023, 14:41:12
от sivers
Joomla 1.5 как убрать кнопку редактировать материант с сайта

Автор andriy465

Ответов: 5
Просмотров: 4021
Последний ответ 12.11.2023, 23:37:03
от all_zer
Не могу распаковать jpa архив сайта Akeeba backup. ajax error

Автор smadkz

Ответов: 4
Просмотров: 1908
Последний ответ 26.12.2020, 15:15:15
от stendapuss
Версия сайта для слабовидящих

Автор nikos

Ответов: 22
Просмотров: 44412
Последний ответ 27.11.2020, 11:04:18
от chernobyl
Поиск статьи по url сайта в админке Joomla 1.5

Автор Tema

Ответов: 5
Просмотров: 2194
Последний ответ 14.08.2020, 07:16:44
от rsn