1

Тема: хостинг загружаемого контента

Всем привет default/smile

Есть сайт, на который пользователи активно загружают контент. И с каждым днем все активней. Дисковое пространство вот-вот станет реальной проблемой. Я так понимаю, что решение это перенос загружаемого контента на другой сервер.

Как решаются подобные задачи? Я вопрос только начал изучать, подтолкните пожалуйста в нужном направлении.

2

Re: хостинг загружаемого контента

mount_nfs ?

Форум сообщества - не место для любой политической агитации...
Хотите выражать свои политические взгляды - переименуйте его в форум Васи Пупкина,
и высказывайтесь от своего имени, а не от имени всего сообщества.
PS: это моя гражданская позиция )

3

Re: хостинг загружаемого контента

CDN?

4 Отредактировано Ray (2012-11-19 10:23:30)

Re: хостинг загружаемого контента

А зачем CDN то? Он денег как-бы стоит. Тут речь о Content Delivery Network не идёт... Нужен обычный сервер под статику - элементарно решается nginx - или поддомен, или upstream - да как угодно - вариантов тьма

5

Re: хостинг загружаемого контента

спасибо, всем, буду копать default/smile

Re: хостинг загружаемого контента

Использовать апи других сервисов , гугл док ?
Как вариант взять выделенный и покупать диски, они не дорогие.
http://fastvps.ru/dedicated/
2 x 3 TB HDD SATA3
(software RAID1)

7

Re: хостинг загружаемого контента

SymfonyProger пишет:

Использовать апи других сервисов , гугл док ?
Как вариант взять выделенный и покупать диски, они не дорогие.
http://fastvps.ru/dedicated/
2 x 3 TB HDD SATA3
(software RAID1)

Ценность комментария? Иногда лучше ничего не написать...

Каким хером тут апи других сервисов и тем более гуглдок? Гуглдок позволяет невозбранно загрузить какой-нибудь терабайт говна и пользоваться им? Расскажите же мне скорее, как это провернуть...
Много есть сервисов, которые предоставляют место под хранение бесплатно или дешево, с возможностью после невозбранно пользоваться загруженным? М? Что-то не слышу вариантов...

Нахуй кому-то нужен убогий фаствпс, который является обычным реселлером Hetzner? Здесь еще рекламы говнохостингов не хватало...
Зачем предлагать вариант сервера на базе  бытового железа, если неизвестна требуемая надежность?

Все это конечно риторические вопросы...
В итоге ни одна строчка комментария не отвечает на вопрос топикстартера.

По теме - решение зависит от возможностей ПО сайта, способно ли оно по крайней мере не мешать распределению контента (например, есть ли возможность в приложении указывать/вычислять по ссылке на файл конкретный сервер, на котором этот файл хранится, а при загрузке файлов распределять их между хранилищами в пуле). Реализаций существует множество, серебряных пуль нет. Выбор зависит от конкретных условий задачи. Объем хранилища например не всегда является узким местом, если контент часто запрашивают то узким местом может стать канал.

CDN в данном случае никаким боком - во-первых, исходные файлы CDN так или иначе берет с основного сервера, т.е. от хранения терабайт у себя он ни в коем случае не избавляет. Во-вторых, он решает совсем другую задачу - быструю отдачу контента пользователям, причем решает ее за деньги. И не каждому это нужно.

8 Отредактировано Ray (2012-11-21 09:01:12)

Re: хостинг загружаемого контента

Со всем согласен, кроме вот этого

CDN так или иначе берет с основного сервера, т.е. от хранения терабайт у себя он ни в коем случае не избавляет

Это спорное утверждение. Если есть особое желание, то можно заливать напрямую на CDN, почему нет собственно? default/smile Другой вопрос, что полностью доверять CDN и не иметь бэкапа и возможности подстраховаться на экстренный случай - вот это странно. Но опять таки, если в голову взбредёт то ничто не мешает так делать... кроме здравого смысла default/smile

9

Re: хостинг загружаемого контента

Ray пишет:

Это спорное утверждение.

Нет там ничего спорного. Теоретически, CDN может предоставлять место под размещение мастер-контента, но я такого у существующих провайдеров не наблюдал. У Амазона для этого есть S3, но он к CDN никакого отношения уже не имеет, это просто независимое хранилище. На сам CDN заливать напрямую бессмысленно, ибо CDN - это децентрализованная сеть серверов, работающая по принципу кеша - каждый сервер хранит только часто запрашиваемый в данном регионе контент, если контент не запрашивается определенное время (обычно месяц) - он удаляется и при следующем запросе снова берется с мастера.
Использовать S3 для больших объемов невыгодно, в сочетании с объемом трафика, который тоже платный, счета будут колоссальные. При объеме от терабайта дешевле будут только собственные серверы. А если контента много, но запрашивают его нечасто - то от CDN никакого профита вообще не будет, только вред.

10

Re: хостинг загружаемого контента

Всем спасибо за ответы, особенно relo_san. Вынужден был отложить решние вопроса,  теперь вернулся. Сейчас выбираю Cloud Storage. Прошу совета. Но сначала более конкретно обрисую задачу. Есть сайт, хостится на fastvps, vds. Нагрузка на сайт небольшая, хостинг вполне устраивает. Сайт позволяет пользователям загружать изображения, из которых формируется общедоступный каталог. Объем изображений около 7Гб, трафик входящий/исходящий: 10/25 Гб в месяц.

Тарифный план был взят итак круче, чем требовалось из-за необходимости дискового пространства. Дальше повышать тарифный план смысла нет. Решено было вынести хранение изображений на внешний ресурс. В итоге смотрю на Cloud Storage. Кто что использовала? Суть CDN я представляю смутно, да и пока думаю нет необходимости. Стоит ли отдавать приоритет отечественным сервисам или брать Амазон и не париться? Смотрел еще rackspace.com, Google Storage (он вроде даже бесплатно предоставляет для превого проекат, только не понял для России сколько даёт 5 или 25 Гб)

Проект на symfony2

P.S. relo_san, а почему fastvps - говнохостинг? Вроде нареканий пока не было.

11

Re: хостинг загружаемого контента

По порядку.
Первое. CDN это не файлохостинг (частным случаем которого является Cloud Storage), это средство раздачи контента. Разница в том, что файлохостинг является самодостаточным, т.е. обеспечивает хранение и раздачу файлов, плюс резервное копирование. CDN обеспечивает только раздачу, он не хранит файлы у себя, он их у себя кеширует на определенное время, зависящее в первую очередь от популярности этих файлов (количества запросов). При первом запросе файла CDN сделает запрос на ваш сервер, стянет себе файл и дальше будет его раздавать какое-то время, пока не удалит. При следующем за удалением запросе он снова сделает запрос на ваш сервер и снова стянет себе файл.

Амазоновский CloudFront работает по такой же схеме, с той лишь разницей, что можно прикрутить в качестве хранилища Amazon S3, чтобы CDN брал файлы оттуда. Примерно с таким же успехом сам Amazon S3 может эти файлы раздавать, без CloudFront. Соответственно, туда придется их автоматически заливать.

Нужно понимать, что задача CDN - быстро раздавать файлы по всему миру. Для этого все нормальные CDN имеют сеть серверов в разных датацентрах по всему миру и свои запатентованные методы определения ближайшего к клиенту и наиболее предпочтительного по каналу/загрузке сервера. Это дорогостоящие технологии, что не может не сказываться на стоимости услуги. Для раздачи 25Гб картинок в месяц CDN не нужен, хотя использовать конечно никто не запрещает.

Конкретно про Амазон, можно посчитать на их калькуляторе, что вам нужно и сколько вы примерно будете за это платить. В вашем случае суммы будут маленькие, в пределах 10 долларов/мес, поскольку объемы тоже копеечные. default/smile
http://calculator.s3.amazonaws.com/calc5.html
Примерно такие же расценки вы получите в случае Google Storage, с той лишь разницей, что до 30 июня 2013 года у вас есть бесплатная квота в 20 гигабайт/мес для всего мира (включая Россию), кроме восточной Азии (здесь только 5Гб).

При этом вы должны учитывать, что при росте ваших объемов в 10 раз Amazon S3 и Google Storage (и заодно с ними все остальные подобные сервисы) перестанут быть настолько привлекательными по цене, а при росте объемов в 20-30 раз они станут и вовсе проигрышными в сравнении с обычным железным сервером, для которого раздача 5Тб статики в месяц является более чем тривиальной задачей. А средненький хорошо оттюненный сервер за 100-150 долл и 25Тб в месяц не напрягаясь раздаст, лишь бы канал и объем трафика позволял.

brizzz пишет:

почему fastvps - говнохостинг

А какой в них особый смысл, собственно? Обычный реселлер Хецнера. Если есть возможность платить с платежной карты и все ок с английским - лучше взять напрямую в Хецнере же, и не морочить голову с промежуточными звеньями, которые надежности обычно не добавляют. Еще и цена будет несколько ниже, как я понимаю.

P.S. Из отечественных сервисов специализированного под файлохостинг мне ничего не известно. Можно присмотреться к Селектелу и попробовать поиграться с их конфигуратором, чтобы при минимально возможной мощности процессора и RAM получить нормальную по размеру емкость диска. Плюс Селектела может быть в том, что он может и само приложение хостить тут же, соответственно вы можете отказаться от существующего VPS. С надежностью у них пока не так чтобы супер, но из отечественных это пожалуй самый адекватный хостер.

P.S.2: У Селектела таки есть отдельно хранилище: http://selectel.ru/services/cloud-storage/. Цены достаточно интересные.

12

Re: хостинг загружаемого контента

relo_san, спасибо за подробный обзор! Уменьшили количество грядущих граблей default/big_smile Наверно буду брать у селектела, цены вполне... посмотрю еще отзывы. Но хостинг у них существенно дороже чем у fasvps. Насчет объемов дальше видно будет. Будут объемы, придется и от виртуального сервера уходить. В общем будем решать по мере поступления default/smile

13

Re: хостинг загружаемого контента

brizzz пишет:

Но хостинг у них существенно дороже чем у fasvps.

Сравнивать лениво, я вообще-то давно не интересуюсь vps-ами. Не думаю, что так уж сильно отличается, но у Селектела все-таки достаточно честное облако с оплатой только за потребляемые ресурсы, так что сравнивать с Хецнером не совсем корректно.
На счет объемов - подход совершенно правильный. Вырастут - перелезете на другой, более подходящий на тот момент вариант.

Кстати, есть еще такая штука, прямо таки по заказу, сегодня: http://habrahabr.ru/post/167117/
Я пользуюсь услугами OVH, но только как доменным регистратором. Однако они очень хороший вариант и как хостер.
Самый мелкий Kimsufi: 10 евро/мес. Внутри 2Гб RAM, 500Гб HDD и какой-нибудь Atom. Канал 100 МБит/с, порт режется до 10МБит/с после 5Тб трафика. При этом это не виртуальный, а реальный физический сервер на Атоме. Литовское отделение OVH оказывает поддержку на русском языке.

14

Re: хостинг загружаемого контента

10 евро за выделенный сервер с такими характеристиками? с трудом верится, даже впс с такими характеристиками не встречал. Еще насчет облака, не совсем понимаю. Это лишь вопрос техническо реализации на стороне хостера? С моей стороны все это будет выглядеть также как, отдльный сервер? Доступ оп ssh, полный контроль над системой? И разница лишь в том что я плачу за использованные ресурсы? За статью, спасибо, почитаю.

15

Re: хостинг загружаемого контента

Процедура регистрации у OVH непростая, заказчика напрягать придется, пока нужды нет default/smile Но на перспективу, может для себя сервачок арендую за такие то деньги

16

Re: хостинг загружаемого контента

Перенос хранения файлов в облачное хранилище selectel прошел успешно. Просто скопировать файлы не получилось, писал скрипт импорта. В итоге более 50 тысяч файлов загрузились за 6 часов при этом обрыв связи был всего один раз.

Из недостатков стоит отметить что пришлось самому писать обертку для Rest API. Пишут что поддерживают OpenStack Swift API. Но к сожалению только первую версию, для которой я не нашел библиотеки на пхп. Поддержка любезно дала ссылку на разработаный каким-то пользователем класс https://github.com/easmith/selectel-storage-php-class . Но он оказался ужасно глючным и проще было переписать. Будет время может выложу свою версию на гитхаб.

Вот если б они вторую версию использовали то можно было бы использовать https://github.com/rackspace/php-opencloud

17

Re: хостинг загружаемого контента

Главное - про бэкапы не забывать. default/smile
А API со временем может и допилят.

18

Re: хостинг загружаемого контента

Хм... подписан на тему, но сообщение на мыло не пришло, уже походу не первый раз.

relo_san пишет:

Главное - про бэкапы не забывать.

Че-то я об этом как-то и не подумал default/hmm Ввело в заблуждение "Трёхкратное резервирование данных", что в общем-то совсем не то... Услуги они такой не предоставляют. На внешний сервер делать бэкап - в моём случае нет смысла, ибо хранилище было выбрано чтобы не поднимать отдельный сервер. К тому же кроме API никаких механизмов они не предоставляют для выполнения бэкапов. В рамках API можно выполнять копирование внутри хранилища, но увы - нельзя выполнить копирование контейнера целкиом, а только отдельные файлики. Пообщался с тех поддержкой, сказали что передадут в отдел разработки предложение о команде полного копирования контейнера и ответя когда они что-нибудь решат.

19

Re: хостинг загружаемого контента

brizzz пишет:

сообщение на мыло не пришло, уже походу не первый раз

Возможно попало в спам. У меня пока руки не доходят, к тому же пока что еще домен переклеивается, но скоро пофикшу эту проблему.

20

Re: хостинг загружаемого контента

relo_san пишет:

Возможно попало в спам. У меня пока руки не доходят, к тому же пока что еще домен переклеивается, но скоро пофикшу эту проблему.

Если что, на гуглопочте в мою папку спам не попало, значит где-то раньше