Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Системное программирование > Img Base64 в обычный .jpg средствами Perl?


Автор: Mosaicolor 10.2.2014, 22:06
Существует ли в  Perl возможность декодировать картинки из Base64 в обычные .jpg ?
Может быть в модуле Image::Magick (но я не нашел)?

Задача такая.
Имеется примерно 70000 картинок в формате Base64
Они записаны в БД MySQL, которая в итоге весит более 3,5 гиг и сильно тормозит.

Идея в том, чтобы перевести изображения в .jpg и залить на обычный сервер, а в БД оставить только ссылки на картинки. Т.к. время отклика Апача на 2 порядка меньше, чем SQL, то это, как мне кажется, должно оптимизировать работу (Или я не прав?)

Автор: tzirechnoy 10.2.2014, 23:05
Цитата
Существует ли в  Perl возможность декодировать картинки из Base64 в обычные .jpg ?


Для кодирования и декодирования Base64 в perl существует модуль MIME::Base64. Впрочем, не он один.

Цитата
Идея в том, чтобы перевести изображения в .jpg и залить на обычный сервер, а в БД оставить только ссылки на картинки. Т.к. время отклика Апача на 2 порядка меньше, чем SQL, то это, как мне кажется, должно оптимизировать работу (Или я не прав?)


Скорее всего -- не прав. Дажэ если перенос картинок как-то улучшыт конкретную ситуацыю -- всё равно не прав.

Поскольку оптимизацыя выборок из баз данных -- это в общем довольно банальный процэсс, который заключается в выяснении того, что с данными происходит сейчас (в случае одного запроса к MySQL -- ну, хотя бы посмотреть query plan), выявлении "узких мест", определении, какие узкие места обеспечены какими физическими или программными ограничениями, и как эти физические или программные ограничения можно обойти. Только затем -- описание и тэстирование новых вариантов и сравнение с предыдущими.

Вы явно не делали первую часть, а собираетесь заниматься каким-то шаманством на работающем проекте. Не надо этого делать. Если Вам это всё делать лень, тем более что явно не Ваша область деятельности -- найдите программиста, который это сделает.

Автор: Bulat 21.2.2014, 13:22
Цитата(Mosaicolor @  10.2.2014,  22:06 Найти цитируемый пост)
Идея в том, чтобы перевести изображения в .jpg и залить на обычный сервер


рэйд-масив

Цитата(Mosaicolor @  10.2.2014,  22:06 Найти цитируемый пост)
а в БД оставить только ссылки на картинки

Цитата(Mosaicolor @  10.2.2014,  22:06 Найти цитируемый пост)
Имеется примерно 70000 картинок


при таких объемах - вполне оптимальное решение!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)