Файловое хранилище. Как эффективно отдавать файлы на скачивание?

12
hoolz
На сайте с 04.07.2012
Offline
100
1472

Доброго времени суток.

Есть файловое хранилище, средний размер файлов ~270 Mb. В сутки около 1000 скачиваний, в ближайшее время ожидается рост до ~2000.

В данный момент: я имею самый простой VPS на IpServer (трафик 1Gbps Premium (200Mbps guaranteed)) с установленным nginx. Файлы скачиваются по прямой ссылке.

Пока что всё устраивает, скорость с Москвы около 10Мб/сек, но вечером в пик чуть спадает до 8 Мб/сек.

Задача: достичь максимально допустимой скорости для людей из СНГ. Чтобы как можно больше людей скачивали файлы с наивысшей скоростью своего интернета.

Посоветуйте пожалуйста, что можно улучшить в моём случае?

S
На сайте с 23.05.2004
Offline
316
#1

Selectel + CDN как вариант.

Я знаю, что селектел многие ругают. Но в моем опыте проблем не видел. Контент - видео + фото.

Это просто подпись.
tmatm
На сайте с 22.04.2006
Offline
205
#2

Можно взять ещё второй аналогичный VPS. Сделать на него копию первого VPS. И в ДНС для домена, с которого идёт скачивание прописать 2 записи A. Примерно половина пользователей будет качать с первого VPS, половина - со второго. Также можно добавить третий, четвёртый, пятый VPS. Но после 5 VPS надо будет смотреть уже в сторону других схем.

Optimizator.Ru ( https://optimizator.ru/ ) — регистрация и продление доменов в RU-CENTER и REG.RU: RU, РФ от 123 р.; MSK.RU, SPB.RU и др. 168 р. + REG.RU ( https://reg.optimizator.ru/ ). Освобождающиеся домены от 150 р. ( https://optimizator.ru/backorder/ )
e_v_medvedev
На сайте с 07.03.2013
Offline
183
#3
hoolz:
Доброго времени суток.
Есть файловое хранилище, средний размер файлов ~270 Mb. В сутки около 1000 скачиваний, в ближайшее время ожидается рост до ~2000.

В данный момент: я имею самый простой VPS на IpServer (трафик 1Gbps Premium (200Mbps guaranteed)) с установленным nginx. Файлы скачиваются по прямой ссылке.
Пока что всё устраивает, скорость с Москвы около 10Мб/сек, но вечером в пик чуть спадает до 8 Мб/сек.

Задача: достичь максимально допустимой скорости для людей из СНГ. Чтобы как можно больше людей скачивали файлы с наивысшей скоростью своего интернета.

Посоветуйте пожалуйста, что можно улучшить в моём случае?

Многое зависит от географии пользователей. Если все достаточно локально, то стоит поискать сервера ближе к пользователю и тогда вариант с распределением пользователей по серверам через DNS, как предлагает tmatm . Если пользователи размазаны по всему миру, то тогда надо смотреть в сторону CDN. Причем CDN тоже надо подбирать с серверами, максимально близкими к пользователям.

smartceo.ru (https://smartceo.ru) (методология интернет-торговли, портфолио, онлайн сервисы)
FoxCloud
На сайте с 08.11.2016
Offline
57
#4

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

FoxCloud ( http://ru.foxcloud.net/ )размещение в Европе / Америке / России. Серверы для любого проекта.
hoolz
На сайте с 04.07.2012
Offline
100
#5

Спасибо всем, кто ответил. В сторону CDN пока думать не буду тогда, ибо интересно только СНГ.

tmatm:
Можно взять ещё второй аналогичный VPS. Сделать на него копию первого VPS. И в ДНС для домена, с которого идёт скачивание прописать 2 записи A. Примерно половина пользователей будет качать с первого VPS, половина - со второго. Также можно добавить третий, четвёртый, пятый VPS. Но после 5 VPS надо будет смотреть уже в сторону других схем.

Вот это прямо то, что нужно! Спасибо большое :)

suffix
На сайте с 26.08.2010
Offline
325
#6
tmatm:
Можно взять ещё второй аналогичный VPS. Сделать на него копию первого VPS. И в ДНС для домена, с которого идёт скачивание прописать 2 записи A. Примерно половина пользователей будет качать с первого VPS, половина - со второго. Также можно добавить третий, четвёртый, пятый VPS. Но после 5 VPS надо будет смотреть уже в сторону других схем.

round robin в данном случае (отдача файлов) мне кажется не будет давать "примерно половина пользователей". Вернее выбрать платный dns хостинг с услугой load balancing

Клуб любителей хрюш (https://www.babai.ru)
hoolz
На сайте с 04.07.2012
Offline
100
#7

А если пользоваться способом "Round Robin" (несколько IP в DNS), стоит ли брать сервера в разных локациях? Допустим, первый сервер в России, второй в Казахстане, например.

Mik Foxi
На сайте с 02.03.2011
Offline
1076
#8

hoolz, раунд робин фигня, последние годы он ведет себя совсем не так как задумано часто и на 2 примерно равно делить он не будет.

Лучше регулировать ссылки или редирект на разные сабы (разные сервера) в зависимости от гео и нагрузки.

Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ + партнерка, до 40$ с продажи.
tmatm
На сайте с 22.04.2006
Offline
205
#9
foxi:
hoolz, раунд робин фигня, последние годы он ведет себя совсем не так как задумано часто и на 2 примерно равно делить он не будет.

У нас для одного домена прописано несколько записей A, раздаются статические картинки. Трафик на всех серверах примерно одинаковый. Так что не соглашусь, что не будет делиться трафик поровну. Может, если мало пользователей, мало скачиваний, то поровну и не будет делиться (один начнёт качать много, а остальные мало), но если пользователей тысячи, то деление поровну будет.

AS
На сайте с 29.03.2019
Offline
26
#10

У меня вопрос немного отличается, но в тему.

Если сервер с 2 hdd (по 2 тб) в raid1 и каналом 100 мбит заполнить на 80% mp4 файлами, сможет ли этот сервер нормально отдавать файлы? Большая часть файлов будет лежать мертвым грузом, одновременных подключений не больше 20-ти.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий