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

.::Агрессор::.

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
Снятие скриншотов.
« : 07.12.2010, 16:24:43 »
Здравствуйте.
Ребята, нужно делать скриншоты сайтов, но очень маленького размера.
Большим размером все делается без проблем, а вот с маленьким... :(
Качество получается слишком низким, ничего особо не разберешь.
А вот глядя на буржуев, у них превьюшки маленького размера отличного качества.
Можете что нибудь подсказать...только не Snagit. ;D
*

nanobot

  • Захожу иногда
  • 54
  • 3 / 2
  • icook.dp.ua
Re: Снятие скриншотов.
« Ответ #1 : 07.12.2010, 16:30:10 »
делай большие, уменьшай сам  через XnView
*

.::Агрессор::.

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
Re: Снятие скриншотов.
« Ответ #2 : 07.12.2010, 17:04:17 »
Незнаю. Уменьшал через Photoshop, ничего не вышло, не уверен, что через XnView получится.
Но спасибо, попробую. ^-^
*

chemerzaev

  • Давно я тут
  • 630
  • 83 / 3
  • Надо мыслить. Меня, например, кормят идеи.
Re: Снятие скриншотов.
« Ответ #3 : 07.12.2010, 17:27:05 »
сделав как описано выше попробуй уменьшить вот этой прогой faststone качество не ухудает а зато может пакетом обрабатывать
Я несчастный человек, который, как долбаный экстрасенс, должен понимать заказчика, даже если он сам не знает, чего хочет
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Снятие скриншотов.
« Ответ #4 : 07.12.2010, 17:31:39 »
во-первых, надо ресайз делать в один заход. т.е. не так, что один раз уменьшил, потом ещё немного - надо за раз.
во-вторых, в том же фотошопе есть фильтры, среди которых - группа sharpen. повышает чёткость изображения.
можно создать дубль слоя, применить фильтр к нему и потом прозрачность и режимами наложения слоёв получить максимально удобоваримый результат. я так обычно делаю
*

.::Агрессор::.

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
Re: Снятие скриншотов.
« Ответ #5 : 08.12.2010, 01:37:50 »
сделав как описано выше попробуй уменьшить вот этой прогой faststone качество не ухудает а зато может пакетом обрабатывать
Спасибо, попробую.
*

.::Агрессор::.

  • Осваиваюсь на форуме
  • 27
  • 1 / 0
Re: Снятие скриншотов.
« Ответ #6 : 08.12.2010, 01:38:48 »
во-первых, надо ресайз делать в один заход. т.е. не так, что один раз уменьшил, потом ещё немного - надо за раз.
во-вторых, в том же фотошопе есть фильтры, среди которых - группа sharpen. повышает чёткость изображения.
можно создать дубль слоя, применить фильтр к нему и потом прозрачность и режимами наложения слоёв получить максимально удобоваримый результат. я так обычно делаю
Такой способ мне не подойдет.
Скринов нужно много, больше 100, и это будет занимать очень много времени.
*

DSergeev™

  • Захожу иногда
  • 64
  • 1 / 0
  • Не возжелай себе рейтинга другого блоггера
Re: Снятие скриншотов.
« Ответ #7 : 08.12.2010, 04:18:59 »
Код
Скринов нужно много, больше 100, и это будет занимать очень много времени.

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