Thumb2x — это мощный и гибкий компонент для обработки изображений

Thumb2x — это мощный и гибкий компонент для обработки изображений, созданный для MODX2.
В основе лежит высокопроизводительная библиотека Glide 2.3.2, обеспечивающая создание изображений «на лету».
Основные возможности
- В основе лежит высокопроизводительная библиотека Glide 2.3.2, обеспечивающая создание изображений «на лету». Поддерживает современные форматы изображений.
- Поддержка Источников файлов позволяет работать с изображениями из любого места. Все ключевые параметры (драйвер обработки, права доступа) вынесены в системные настройки.
- Поддержка не только нарезки и изменения размера, но и наложения фильтров, эффектов и водяных знаков через простые параметры в сниппете.
- Компонент ведет учет всех сгенерированных файлов в базе данных, что дает основу для аналитики и позволяет управлять кэшем через удобную таблицу в админке.
Документация тут: https://docthumb2x.ivan345.com/ru/
Сам компонент в modstore: https://modstore.pro/packages/photos-and-files/thumb2x
Сам компонент в extras.modx.com: https://extras.modx.com/package/thumb2x
Поблагодарить автора
Отправить деньги
Комментарии: 5
Попробовал на одной странице
Время парсинга: 0,2667 s
Время выполнения запросов: 0,0641 s
Всего запросов: 274
Источник: database
Второй вариант
Время парсинга: 0,2722 s
Время выполнения запросов: 0,0725 s
Всего запросов: 338
Источник: database
По количеству запросов что то совсем не впечатляет.
<img src="{$main_news_img | pthumb : 'w=490&h=320&zc=1$f=webp&q=90'}" class="bg-img blur-up lazyload"
alt="{$pagetitle}">
Время генерации страницы: 0,3308 sВремя парсинга: 0,2667 s
Время выполнения запросов: 0,0641 s
Всего запросов: 274
Источник: database
Второй вариант
{var $params = [
'w' => 490,
'h' => 320,
'fit' => 'stretch',
'fm' => 'webp'
]}
<img src="{'Thumb2x' | snippet : ['input' => $main_news_img,'options' => $params]}"
class="bg-img blur-up lazyload" alt="{$pagetitle}">
Время генерации страницы: 0,3447 sВремя парсинга: 0,2722 s
Время выполнения запросов: 0,0725 s
Всего запросов: 338
Источник: database
По количеству запросов что то совсем не впечатляет.
pthumb работает по принципу «проверил файл в кэше -> отдал». Он проверяет только наличие файла на диске. Это очень быстрая файловая операция, которая не требует запросов к базе данных.
Thumb2x работает по более сложной схеме: «проверил запись в БД -> сгенерировал -> записал в БД».
Самое главное — это увеличение запросов происходит только во время первой генерации некэшированной страницы MODX.
Как только MODX кэширует страницу целиком, её HTML отдаётся пользователю мгновенно. Ни сниппет pthumb, ни Thumb2x больше не запускаются, и никаких дополнительных запросов к БД не происходит.
На производительность для конечного пользователя (на кэшированном сайте) это не влияет. Разница заметна только для администратора при первом заходе на страницу или при сбросе кэша.
Thumb2x работает по более сложной схеме: «проверил запись в БД -> сгенерировал -> записал в БД».
Самое главное — это увеличение запросов происходит только во время первой генерации некэшированной страницы MODX.
Как только MODX кэширует страницу целиком, её HTML отдаётся пользователю мгновенно. Ни сниппет pthumb, ни Thumb2x больше не запускаются, и никаких дополнительных запросов к БД не происходит.
На производительность для конечного пользователя (на кэшированном сайте) это не влияет. Разница заметна только для администратора при первом заходе на страницу или при сбросе кэша.
Спасибо конечно за компонент, но столкнулся с рядом ошибок.
1. Картинки с внешней ссылки не поддерживает
2. Картинки на 30% весят больше по сравнению с pthumb
1. Картинки с внешней ссылки не поддерживает
2. Картинки на 30% весят больше по сравнению с pthumb
В текущей реализации компонент работает только с локальными файлами, которые находятся в пределах указанного источника файлов.
Библиотека Glide, которую использует компонент, по умолчанию настроена на работу с LocalFilesystemAdapter — адаптером для локальной файловой системы. Это сделано в первую очередь для безопасности и предсказуемости работы.
Поддержку внешних URL, возможно сделаю в следующей версии.
По весу картинок я сравнительных тестов не проводил.
Библиотека Glide, которую использует компонент, по умолчанию настроена на работу с LocalFilesystemAdapter — адаптером для локальной файловой системы. Это сделано в первую очередь для безопасности и предсказуемости работы.
Поддержку внешних URL, возможно сделаю в следующей версии.
По весу картинок я сравнительных тестов не проводил.
Попробуйте в настройках выставить используемый драйвер в значение imagick
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.