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

Noks

  • Новичок
  • 2
  • 0 / 0
Хотелось бы выводить описание категории созданных в ZOO, но вот незадача, при разбиении на страницы description выводится на каждой странице, что плодит ненужные дубли контента, есть ли возможность выводить  описание категории только на первой странице?
Долго копался в инете, нарыл только как сделать это для обычных категорий Joomla вот тут http://joomla.zvirec.com/lessons/5-cod/24-description.html
Может подобным образом можно сделать и для ZOO, если честно не силен в PHP или как нибудь по-другому вывести текст на первой странице категории
*

likrion

  • Давно я тут
  • 750
  • 129 / 2
может как то так?:
заменить в media/zoo/applications/приложение/templates/шаблон/_category.php

Код
<?php if ($this->params->get('template.show_categories_descriptions') && $category->getParams()->get('content.teaser_description')) : ?>

на

Код
<?php if ($this->params->get('template.show_categories_descriptions') && (!isset($_GET['page'])) && $category->getParams()->get('content.teaser_description')) : ?>
R331474010295
*

Noks

  • Новичок
  • 2
  • 0 / 0
Спасибо огромное, likrion, поправил по аналогии файл media/zoo/applications/приложение/templates/шаблон/category.php, теперь все как нужно
*

Benjaminblum

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Здравствуйте, может кто знает как описание категории в низ опустить?
 ссылка на сайт http://doormagnat.ru/dveri/mdf.html
*

deathsoul

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
может как то так?:
заменить в media/zoo/applications/приложение/templates/шаблон/_category.php

Код
<?php if ($this->params->get('template.show_categories_descriptions') && $category->getParams()->get('content.teaser_description')) : ?>

на

Код
<?php if ($this->params->get('template.show_categories_descriptions') && (!isset($_GET['page'])) && $category->getParams()->get('content.teaser_description')) : ?>

Здравствуйте, не могли бы помоч? Сделал все как описано, но описание все ровно на страницах 2,3 и т д
Вот кусок кода _category.php
Код
<?php if ($this->params->get('template.show_categories_descriptions') && (!isset($_GET['page'])) && $category->getParams()->get('content.teaser_description')) : ?>
<div class="description"><?php echo $category->getParams()->get('content.teaser_description'); ?></div>
<?php endif; ?>
Подскажите пожалуйста, что не так.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Где настраивается вывод колиства товара на странице?

Автор Lopes-popes

Ответов: 1
Просмотров: 3494
Последний ответ 09.08.2019, 00:12:54
от Lopes-popes
Определение положения фото на странице Product Catalog

Автор saschka

Ответов: 0
Просмотров: 1503
Последний ответ 10.01.2017, 19:44:44
от saschka
Ссылка из списка категорий на подкатегорию

Автор saschka

Ответов: 3
Просмотров: 1609
Последний ответ 08.01.2017, 17:18:23
от saschka
Zoo frontpage сделать названия категорий снизу картинок

Автор a_muskat

Ответов: 0
Просмотров: 1468
Последний ответ 03.11.2015, 15:20:25
от a_muskat
Как вывести все элементы из вложеных категорий?

Автор kost757

Ответов: 2
Просмотров: 1809
Последний ответ 19.09.2015, 14:50:40
от radiant