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

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
yoo_master пара вопросов
« : 10.02.2015, 17:07:32 »
Всем привет. Ковыряю пустой шаблон yoo_master, наткнулся там на файл custom.css - насколько я понял он для таких нубов как я, вношу туда свои изменения, вроде получается, но не все. Подскажите пожалуйста пару моментов. У меня проблема с позицией меню, настраиваю ее всякими падингами, но когда в хедере делаю изменения, меню смещается, напрмиер когда убираю лого, или меняю его размер. Можно как нибудь зафиксировать позицию меню?





Код
#menubar {
    float: left;
    width: 910px;
    height: 40px;
    margin: 0px 0px 10px;
    padding: 0px 35px;
    background-image: url("/images/bg.mainmenu.png");
    background-repeat: no-repeat;
    font-family: Michroma,sans-serif;
    font-size: 12px;
    color: #CCC;
    position: relative;
}
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #1 : 10.02.2015, 17:14:47 »
Для начала, вы начали не стой стороны. Вам необходимо вносить правки в /less/theme.less, затем в параметрах шаблона на вкладке WARP нажимать кнопочку "Compile", после чего внесенные изменения отобразятся на сайте. Если вы не знаете less, то изменения можно вносить по правилам CSS, ничего страшного не случится. Многие предопределенные константы вы найдете в соседнем файле /less/style.less, они записываются туда из параметров шаблона, вы также можете править их вручную. Почитайте это: http://www.lesscss.ru/
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #2 : 10.02.2015, 17:28:16 »
С less сталкивался в другом шаблоне, но в этом вроде нету такой папки, она есть в yoo_master2, а у меня первый шаблон. Тут вроде попроще.
В custom файле написано
 /*
 * Custom Style Sheet - Use this file to style your content
 */

Вот и я решил там ковырять, не стоит этого делать?
*

dynamit

  • Завсегдатай
  • 1744
  • 265 / 0
  • Winter Is Coming
Re: yoo_master пара вопросов
« Ответ #3 : 10.02.2015, 17:32:12 »
можете и так. в  custom.css пишите свои стили
ТАМ ГДЕ ТЫ НИЧЕГО НЕ МОЖЕШЬ, ТЫ НЕ ДОЛЖЕН НИЧЕГО ХОТЕТЬ
==========================================================
Сайты на Joomla!. Верстка. Консультации.  ||  Яндекс уже не ищет, он уже продает (с)  ||    Создание шаблона для Joomla 2.5
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #4 : 10.02.2015, 17:50:03 »
А насчет позиции меню не подскажите?
*

dynamit

  • Завсегдатай
  • 1744
  • 265 / 0
  • Winter Is Coming
Re: yoo_master пара вопросов
« Ответ #5 : 10.02.2015, 17:53:22 »
что именно?
ТАМ ГДЕ ТЫ НИЧЕГО НЕ МОЖЕШЬ, ТЫ НЕ ДОЛЖЕН НИЧЕГО ХОТЕТЬ
==========================================================
Сайты на Joomla!. Верстка. Консультации.  ||  Яндекс уже не ищет, он уже продает (с)  ||    Создание шаблона для Joomla 2.5
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #6 : 10.02.2015, 18:00:21 »
В первом посте писал.
У меня меню смещается, когда в хедер вношу изменения, лого уберу или дату.(на скринах пример, убрал лого). Нельзя никак зафиксировать определенную позицию меню? Или так оно и должно быть?
« Последнее редактирование: 10.02.2015, 18:05:50 от Лузер »
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #7 : 10.02.2015, 18:08:02 »
Это все в стилях, от самой позиции не зависит. Просто вносите, походу, не совсем корректные правки в плане разметки.
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #8 : 10.02.2015, 18:09:50 »
Код
#menubar {
    float: left;
    width: 910px;
    height: 40px;
    margin: 0px 0px 10px;
    padding: 0px 35px;
    background-image: url("/images/bg.mainmenu.png");
    background-repeat: no-repeat;
    font-family: Michroma,sans-serif;
    font-size: 12px;
    color: #CCC;
    position: relative;
}

Может тут какая ошибка или не дописал чего
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #9 : 10.02.2015, 18:12:38 »
Сложно сказать, не видя сайт.
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #10 : 10.02.2015, 18:14:24 »
http://myaa.hol.es/ Гляньте если не сложно
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #11 : 10.02.2015, 18:17:48 »
А как должно быть?
Дата в #header > #toolbar - это что?
« Последнее редактирование: 10.02.2015, 18:20:50 от AlekVolsk »
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #12 : 10.02.2015, 18:21:59 »
Ну как должно быть я могу выравнять меняя margin, но если после этого уберу лого например, меню уедет вверх.
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #13 : 10.02.2015, 18:24:03 »
Дата в #header > #toolbar - это что?

Там в хедере 3 позиции вроде, тулбар(где дата), лого и меню
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #14 : 10.02.2015, 18:27:40 »
Тогда сразу поставьте то лого, которое должно быть. Картинка у #header, имхо, не совсем корректна, ее нужно только для хедера указать (текстуру), а черную полоску под меню надо стилями рисовать для самого меню. Для тулбара свой отдельный фон задайте.
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #15 : 10.02.2015, 18:33:15 »
Тоесть нужно по кускам собрать фон для тулбара, лого и хедера в целом и выключая лого или дату в шаблоне, их фон все равно останется и меню не сдвинется? я правильно понял?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #16 : 10.02.2015, 18:36:42 »
Не совсем. Меню будет корректно приклеено под лого (или под тулбар, если лого выключено, или вообще сверху, если выключен также и тулбар). При этом фон у всех блоков разъезжаться не будет.
Сейчас у вас тулбар и лого имеют один и тот же фон. Если вы хотите сохранить это, оберните тулбар и лого в отдельный div и этому диву сделайте общий текстурный фон.
Для меню черную полоску лучше не графикой, а стилями выводить (linear-gradient)
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #17 : 10.02.2015, 18:45:46 »
Спасибо большое за помощь, я вроде понял о чем вы, попрактикуюсь. Единственное, я не нашел где дивы прописаны и прочее, индекс.php какая-то не такая) поковыряюсь еще может найду. Вот что в индексе в шаблоне написано

Код
<?php
/**
* @package   yoo_master
* @author    YOOtheme http://www.yootheme.com
* @copyright Copyright (C) YOOtheme GmbH
* @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
*/

// no direct access
defined('_JEXEC') or die('Restricted access');

// include config
include_once(dirname(__FILE__).'/config.php');

// get warp
$warp = Warp::getInstance();

// load main template file, located in /layouts/template.php
echo $warp['template']->render('template');
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #18 : 10.02.2015, 18:49:16 »
/layouts/template.php
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #19 : 10.02.2015, 19:07:02 »
Ага, там все  прописано, но так запутано) Спасибо еще раз друг!
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #20 : 10.02.2015, 22:03:49 »
Все получилось)

Хотелось бы еще насчет хедера и футера спросить, как правильно менять их ширину, растянуть например на весь экран, или немного выдвинуть чтоб красивее оформить края, без divов можно обойтись?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #21 : 10.02.2015, 22:12:12 »
Их ширину менять не надо, она нормально соответствует ширине контейнера основного контента. Края по бокам оформляйте как есть - бордер не должен вылезти по сторонам.
*

Лузер

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: yoo_master пара вопросов
« Ответ #22 : 11.02.2015, 16:01:35 »
AlekVolsk, у меня тут небольшой косяк на сайте, может знаете как поправить. Когда ты не авторизован на сайте User Menu висит пустым контейнером

 


Не пойму как избавиться
« Последнее редактирование: 11.02.2015, 16:11:56 от Лузер »
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: yoo_master пара вопросов
« Ответ #23 : 11.02.2015, 17:44:03 »
Это некорректно выставлены права на публикацию либо пунктов меню либо модуля, к разметке отношение не имеет. Учите матчасть и основы администрирования J.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Несколько вопросов по шаблону DD GFX 35 и компонету к2?

Автор volond430

Ответов: 0
Просмотров: 922
Последний ответ 05.03.2016, 15:49:33
от volond430
Проблема с шаблоном, вместо русских названий знаки вопросов

Автор romanmorozov

Ответов: 1
Просмотров: 1553
Последний ответ 11.12.2013, 14:18:04
от pronoob
Как изменть футер в шаблоне Yoo_master?

Автор nerkon

Ответов: 6
Просмотров: 2124
Последний ответ 12.08.2013, 18:18:17
от Pavel M