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

GuardianStation

  • Новичок
  • 9
  • 0 / 0
Добрый день, граждане. Являюсь новичком на форуме, но не, как мне кажется, новичком в Joomla :)
Сайт туристической тематики был на 1.5.25, сейчас переписываю с нуля дизайн на 2.5.28. На новой платформе использую шаблон nano2 от youtheme.
Вопрос:
Имеется кнопка "Забронировать", которая перелинкует на страницу-онлайн бронирования нашего сервера. Добавляется вручную после заголовка каждого материала (объекта курорта). Для каждого материала ссылка по клику на "Забронировать" должна быть уникальна (добавляется вручную мною).
Есть ли какая-то возможность в админке сделать так (модулями?...), чтобы эта кнопка добавилась на все страницы материала объектов курортов, чтобы не добавлять её вручную? Линки к ней буду прописывать самостоятельно.
Чтобы она хотя бы отобразилась в материале, не добавляя её через "Вставить изображение"?
Есть ли какие-то подобные фичи?
P.S. Сайт на 1.5 писался другими людьми, и с админкой и системой в целом ознакомился более 5 лет назад, но углубленно переписывать и редизайнить начал недавно только. Просьба сильно не пинать, если сумбурно охарактеризовал вопрос :)
P.S.S. есть ли какие то фичи по автоматизации добавления других вещей в Joomla? Я имею в виду, например, массово вставить tab-s (вкладки) на определенные страницы, без необходимости лезть в каждый материал?
Спасибо!
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
здравствуйте.
во-первых, странно, что вы на 2.5 пересаживаетесь, а не на 3.6.
с одной заброшенной на другую...

по поводу вставки.
а) вставлять по клику на кнопке  под редактором. так устроены многие кнопки для всяких галерей
б) генерировать автоматически во время вывода материала, исходя из ID статьи, например
*

GuardianStation

  • Новичок
  • 9
  • 0 / 0
Для 3.5 не нашел необходимого шаблона...
Хотя потом увидел, что nano_3 вышло...ну да сейчас уже пока нет смысла. В целом сайт нужно редизайнить.
Цитировать
генерировать автоматически во время вывода материала, исходя из ID статьи, например
Не могли бы подсказать, каким образом?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
можно врезаться в шаблон вывода материала.
тут в зависимости от шаблона разные варианты будут, но смысл в том, что надо перекрыть вывод шаблона статьи своим и в этом файле прописать нужный код за заголовком, получив в качестве параметра id статьи (можно и в родном файле шаблона прописать, но это чревато затиранием при обновлении).
либо взять любой контентный плагин (лучше сторонний, чтобы при обновлении не затирало) и в него нужный код добавить.
посмотрите в папке с контентными плагинами, найдите самый простой и маленький и в него врежьте свой код.
а на счет 2.5 - тут вы сами себе буратино. сейчас мало у кого под рукой она есть и конкретику никто вам не напишет, соответственно.

*

GuardianStation

  • Новичок
  • 9
  • 0 / 0
Тем не менее - спасибо! Буду пробовать.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
вот в качестве примера, сейчас перекрываю как раз другой их шаблон - master2
вот такую структуру воссоздал
templates\yoo_master2\styles\default\layouts\com_content\article\default.php
а конечный файл - это копия
\templates\yoo_master2\warp\systems\joomla\layouts\com_content\article\default.php

теперь по дефолту выводится мой (первый) файл, в который я могу что-то свое писать.

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

Вывод материала в результатах поиска всего или до подробнее

Автор Drawmy

Ответов: 0
Просмотров: 1849
Последний ответ 02.02.2017, 16:41:38
от Drawmy
Что делать после установки и настройки шаблона Joomla

Автор Sycamore

Ответов: 17
Просмотров: 3562
Последний ответ 28.01.2017, 21:52:05
от vipiusss
После установки обновления Joomla_1.6.5_to_1.7.0_Package не работают модули

Автор proff.82

Ответов: 1
Просмотров: 1236
Последний ответ 28.12.2016, 17:32:29
от voland
Отображение материала на главной

Автор timssky

Ответов: 13
Просмотров: 2064
Последний ответ 15.12.2016, 17:26:48
от timssky
Проблема после переноса шаблон с версии Joomla 1.5 на 2.5

Автор Berkin09

Ответов: 3
Просмотров: 1504
Последний ответ 24.10.2016, 13:08:27
от Berkin09