Хранение фото на большом портале
Хранение фото на большом портале
Добрый день, я разработал портал на Yii-2, и вот перед выходом осознал что имею большую проблему с фото.
Проблема в том, что портал рассчитан на то, что каждый юзер, загружает как минимум 3 фотки за один раз и по моим подсчетам, серверное место, допустим в 10 гиг, очень быстро израсходуется, буквально за пол месяца при активной работе портала. Вопрос в том, как опытные люди решают такие проблемы? Спасибо.
Проблема в том, что портал рассчитан на то, что каждый юзер, загружает как минимум 3 фотки за один раз и по моим подсчетам, серверное место, допустим в 10 гиг, очень быстро израсходуется, буквально за пол месяца при активной работе портала. Вопрос в том, как опытные люди решают такие проблемы? Спасибо.
Re: Хранение фото на большом портале
эм магии не будет ... увеличивайте место для хранения фото ... смотря какие потребности: можете сжимать немного ... но в любом случае когдато места не хватит и все равно возвращаемся к тому что надо увеличивать место ....
Re: Хранение фото на большом портале
нужно больше серверов....так и решают.
а затем оптимизируют, на хабре был опыт описан крупного игрока в этой сфере.
а затем оптимизируют, на хабре был опыт описан крупного игрока в этой сфере.
Re: Хранение фото на большом портале
Вы были моя последняя надежда, очень, очень жаль
Re: Хранение фото на большом портале
а вы на что рассчитывали ? что вам расскажут как сохранить 10Gb в 2Mb ... ?
-
- Сообщения: 239
- Зарегистрирован: 2017.03.28, 20:03
Re: Хранение фото на большом портале
Выносите на cdn. Они знают магию. Чем больше вы им заплатите тем сильнее магия
- rodion_zlobin
- Сообщения: 207
- Зарегистрирован: 2017.01.11, 16:33
Re: Хранение фото на большом портале
Скиньте ссылку статьи на хабре, если не трудно, очень интересно почитать
Re: Хранение фото на большом портале
1. Вариант подороже: юзаете aws s3.
2. Вариант подешевле: берете сервачок https://chipcore.com/, ставите minio https://www.minio.io/ - имеете свой s3, правда без cdn.
Подороже-подешевле относительно. На разных объемах разные ценовые перекосы.
2. Вариант подешевле: берете сервачок https://chipcore.com/, ставите minio https://www.minio.io/ - имеете свой s3, правда без cdn.
Подороже-подешевле относительно. На разных объемах разные ценовые перекосы.
Re: Хранение фото на большом портале
Имею сайт с обоями для рабочего стола, 1 Тб. Пробовал делать так, основной сайт на быстрой VDS (какую сами выберете) для расположения движка и базы, допустим - 20 Гб SSD, 8 cores, 8 Gb оперативы.
И отдельный Storage Server (например, https://ru.hetzner.com/hosting/produktm ... duktmatrix). А тут самое интересное - для того, чтобы выдать изображение с сервера по FTP - приходится полностью читать файл, потом его выдавать через sendFile yii2 - в общем так быстро забивается оперативка, что сервер умирает за полдня, хотя запросов на забор изображения не так много, тыща-две в час.
По WebDav тормозилово жуткое тоже.
В общем сделал вывод - что лучше иметь сервер с нужным диском, чтобы оперативные данные хранить именно там. Под бекапы можно (даже нужно) отдельный.
Для ТС:
А так, если Вам надо хранить холодные данные - то можно услуги типа AWS S3 (он мне кажется дорогим): Onedrive, GoogleStorage, Mail, YandexDisk - с последним мне видимо не везет, дичайшие тормоза. Даже компоненты есть для Yii2 соответствующие: https://github.com/trntv/yii2-file-kit
И отдельный Storage Server (например, https://ru.hetzner.com/hosting/produktm ... duktmatrix). А тут самое интересное - для того, чтобы выдать изображение с сервера по FTP - приходится полностью читать файл, потом его выдавать через sendFile yii2 - в общем так быстро забивается оперативка, что сервер умирает за полдня, хотя запросов на забор изображения не так много, тыща-две в час.
По WebDav тормозилово жуткое тоже.
В общем сделал вывод - что лучше иметь сервер с нужным диском, чтобы оперативные данные хранить именно там. Под бекапы можно (даже нужно) отдельный.
Для ТС:
А так, если Вам надо хранить холодные данные - то можно услуги типа AWS S3 (он мне кажется дорогим): Onedrive, GoogleStorage, Mail, YandexDisk - с последним мне видимо не везет, дичайшие тормоза. Даже компоненты есть для Yii2 соответствующие: https://github.com/trntv/yii2-file-kit
Re: Хранение фото на большом портале
вот вам как раз мой второй вариант подойдет идеально.Йож писал(а): ↑2017.05.15, 18:23 Имею сайт с обоями для рабочего стола, 1 Тб. Пробовал делать так, основной сайт на быстрой VDS (какую сами выберете) для расположения движка и базы, допустим - 20 Гб SSD, 8 cores, 8 Gb оперативы.
И отдельный Storage Server (например, https://ru.hetzner.com/hosting/produktm ... duktmatrix). А тут самое интересное - для того, чтобы выдать изображение с сервера по FTP - приходится полностью читать файл, потом его выдавать через sendFile yii2 - в общем так быстро забивается оперативка, что сервер умирает за полдня, хотя запросов на забор изображения не так много, тыща-две в час.
По WebDav тормозилово жуткое тоже.
В общем сделал вывод - что лучше иметь сервер с нужным диском, чтобы оперативные данные хранить именно там. Под бекапы можно (даже нужно) отдельный.
А то, что вы про фтп придумали - это жесть конечно. Читать не надо - надо отдавать с другого сервера по прямой ссылке.
Re: Хранение фото на большом портале
Да, Александр, я, конечно, думал об этом. Но тут дело у меня стоит в том, чтобы защитить коллекцию обоев (в которую вложено не менее полмиллиона рублей) от тупого скачивания всех обоев. Поэтому выдавать прямые ссылки не хотелось бы. Тут можно либо изменять ссылки постоянно, либо не знаю что.
А в моем случае я выдаю каждый раз новую ссылку с хешем в зависимости от сессии. Пробовал по HTTPS, FTP, WebDav, Samba, SFTP, SSH выкачивать и отдавать одновременно (через remote filesize, readfile и выдачу contentlength все отдается корректно). Самый быстрый способ, конечно - по http, но все равно рядом не стояло с тем, когда все на сервере расположено. Тем более сейчас железо не супердорогое https://robot.your-server.de/order/market https://www.online.net/en/dedicated-server https://contabo.com/?show=servers, конкуренция..
Re: Хранение фото на большом портале
а, я понял. вам нужны защищенные ссылки. minio решает эту проблему тоже - можно генерить presigned urls, которые будут действительны заданное время.Йож писал(а): ↑2017.05.15, 20:37Да, Александр, я, конечно, думал об этом. Но тут дело у меня стоит в том, чтобы защитить коллекцию обоев (в которую вложено не менее полмиллиона рублей) от тупого скачивания всех обоев. Поэтому выдавать прямые ссылки не хотелось бы. Тут можно либо изменять ссылки постоянно, либо не знаю что.
Но вообще не очень понимаю, что это дает, ведь я могу ваш сайт зеркалировать.
Re: Хранение фото на большом портале
Супер, попробую!
Имеете ввиду полностью запарсить? Сейчас стоит ограничение на количество загрузок фото по IP и куки.. Думаю, еще сделать только для зарегистированных - тогда вообще без шансов будет слить все
Или имеете ввиду зеркалировать в реальном времени? Такое банится быстро.. В том числе проверка на реферера и все такое.
+ стоит блокировка по диапазонам IP большинства известных хостингов в мире и в РФ на внешние запросы (banhammer называется штука).
Понимаю, что все равно 100% не защитить, но хотя бы так.
Re: Хранение фото на большом портале
меня забанит, если я в минуту буду по 100 запросов делать со своего ip?Йож писал(а): ↑2017.05.16, 00:27Супер, попробую!
Имеете ввиду полностью запарсить? Сейчас стоит ограничение на количество загрузок фото по IP и куки.. Думаю, еще сделать только для зарегистированных - тогда вообще без шансов будет слить все
Или имеете ввиду зеркалировать в реальном времени? Такое банится быстро.. В том числе проверка на реферера и все такое.
+ стоит блокировка по диапазонам IP большинства известных хостингов в мире и в РФ на внешние запросы (banhammer называется штука).
Понимаю, что все равно 100% не защитить, но хотя бы так.
Re: Хранение фото на большом портале
Если все по уму сделать, то не забанит, конечно. Если парсить исходники обоев (большие картинки) - то после 20 скачек нужно менять IP и чистить куки..
Любой сайт можно выкачать, но все равно усложнить задачу для парсеров - это важно для меня)
Любой сайт можно выкачать, но все равно усложнить задачу для парсеров - это важно для меня)
Re: Хранение фото на большом портале
Устал, так и не смог найти то, что хотел. Очень похожа на эту статью https://habrahabr.ru/company/mailru/blog/316740/ , но та была про изображения конкретно. Суть была её в том, что компания наняла или выделела работников под задачу "эффективно хранить фоточки", так как уже упёрлись в немыслеммое количество серверов, если и дальше пойдёт, то там их ждал крах. Что за компания, что за статья фиг вспомню, но точно на хабре.
Тем немеее пока искал, вот парочку интересных попались, но все не те :(
https://habrahabr.ru/post/185636/
https://habrahabr.ru/post/104094/
https://habrahabr.ru/company/creativemedia/blog/57162/
https://habrahabr.ru/post/184652/
https://habrahabr.ru/company/avito/blog/328778/
https://ruhighload.com/index.php/2009/0 ... %B8%D0%B9/
Тем немеее пока искал, вот парочку интересных попались, но все не те :(
https://habrahabr.ru/post/185636/
https://habrahabr.ru/post/104094/
https://habrahabr.ru/company/creativemedia/blog/57162/
https://habrahabr.ru/post/184652/
https://habrahabr.ru/company/avito/blog/328778/
https://ruhighload.com/index.php/2009/0 ... %B8%D0%B9/
- rodion_zlobin
- Сообщения: 207
- Зарегистрирован: 2017.01.11, 16:33
Re: Хранение фото на большом портале
Спасибо за труд, будем изучать
Re: Хранение фото на большом портале
Спасибо за ответы ребята, разгребаюсь