» WAP Мастер Форум https://forum.wapinet.ru/index.php » SQL https://forum.wapinet.ru/viewforum.php?id=8 » Выдача картинок с mysql с помощью nginx https://forum.wapinet.ru/viewtopic.php?id=2448 |
TLENS » 2015.10.31 15:38 | ||||||||||||||||||||||||||
Есть ли такая возможность что бы не вмешивать в эту задачу php. | ||||||||||||||||||||||||||
TLENS » 2015.11.01 16:29 | ||||||||||||||||||||||||||
Уточню задачу. Нужно хранить картинки в базе так как при хранении просто на фс то сильно перегружается винт постоянно нагружен по максимуму и в следствии висит сайт. | ||||||||||||||||||||||||||
Gemorroj » 2015.11.01 19:26 | ||||||||||||||||||||||||||
что-то я сомневаюсь, что нагрузка на винт большая из-за статики. много операций записи? имхо, настроить nginx с http кэшированием в большинстве случаев достаточно. | ||||||||||||||||||||||||||
TLENS » 2015.11.07 03:20 | ||||||||||||||||||||||||||
В обьщем там кроме картинок на диске кешировались еще много файлов. И нагрузка на винт была постоянно на максимум. Переписал кеш на mysql плюс подключил memcache сайт начал летать. | ||||||||||||||||||||||||||
Gemorroj » 2015.11.07 11:56 | ||||||||||||||||||||||||||
думаю, тут и mysql не лучшее решение. возможно, подошла бы какая-нибудь nosql база. например, couchdb. там можно сразу ссылку на файл в БД давать (встроенный http сервер), минуя nginx. | ||||||||||||||||||||||||||
TLENS » 2015.11.07 20:51 | ||||||||||||||||||||||||||
Я так понял речь идет о картинках или весь кеш сайта предлагаешь хранить на этой базе? | ||||||||||||||||||||||||||
Gemorroj » 2015.11.08 12:18 | ||||||||||||||||||||||||||
так проблема в плохо оптимизированном php коде? ну так блин, с этого и начинал бы) | ||||||||||||||||||||||||||
TLENS » 2015.11.08 15:15 | ||||||||||||||||||||||||||
Не понял с чего ты взял что проблема в php. Была проблема из-за хранения данных на винте. вот функция кеша (старая) Код:
А вот новая Код:
Добавлено спустя 5 минут 24 секунды: Код:
| ||||||||||||||||||||||||||
TLENS » 2015.11.08 15:34 | ||||||||||||||||||||||||||
Можно было бы и выдавать картинку после сохранения с помощью nginx передав заголовок X-Accel-Redirect но хз че так не сделал. Может посчитал лишним. Код:
| ||||||||||||||||||||||||||
Gemorroj » 2015.11.10 13:03 | ||||||||||||||||||||||||||
у тебя все файлы в 1 папке были? возможно проблема в этом | ||||||||||||||||||||||||||
TLENS » 2015.11.12 19:16 | ||||||||||||||||||||||||||
Ну да как раз в этом и была проблема. Плюс каждое видео хранилось в отдельном файле. Вопервых при поиске видео функция setCache вызывалась ~150 раз а это чтение +запись. | ||||||||||||||||||||||||||
Gemorroj » 2015.11.12 20:04 | ||||||||||||||||||||||||||
ну вот раздели просто по папкам файлы. | ||||||||||||||||||||||||||
TLENS » 2015.11.13 06:21 | ||||||||||||||||||||||||||
Ну насчет файлового кеша я уже разобрался. Перенес всю задачу на базу. А вот с превьюшками можно так сделать. |