Amazon S3 или решение проблемы большого трафика
Возможно, Вы замечали, что иногда мои файлы для скачивания или видеоролики, предназначенные для онлайн-просмотра, располагаются на серверах s3.amazonaws.com, которые относятся к сервису Amazon Simple Storage Service (Amazon S3).
Для чего это делается?
Все дело в ограниченной пропускной способности, которую дает хостер. Когда Вы покупаете хостинг, неважно это дешевый shared хостинг или это выделенный сервер, то вам, как правило, изначально дают пропускную способность канала в 100 Мбит/сек, что в более привычных нам мегабайтах равно 12 Мб/сек.
И вот, представьте, что Вы выкладываете на свой сайт какой-нибудь файл размером в 50 Мб и даете на него ссылку всей армии своих подписчиков.
Предположим, у Вас 40000 подписчиков, и сразу после выхода рассылки 2000 из них заходят на ваш сайт и начинают качать этот файл. В этот момент эти 12 мегабайт в секунду, которые у Вас есть, начинают делиться на все эти 2000 человек. И это еще в идеале, т.к. мы не считаем, что на вашем сайте может быть много других посетителей в этот момент, которые качают другие файлы.
В итоге получается ситуация, когда канал забивается напрочь: у людей скорость скачивания падает до катастрофически низкой, а сервер начинает отвечать на запросы с заметными тормозами. При этом, если у вас дешевый хостинг за 5-10$ с «неограниченным трафиком», то ваш сайт в этот момент, скорее всего, отрубят, а Вы получите письмо о превышенной максимальной нагрузке, а если у Вас выделенный сервер, то он просто будет медленно отвечать на запросы либо просто будет выдавать знаменитую ошибку с кодом 503.
Это можно сравнить с ситуацией, когда в многоэтажном доме одновременно все откроют краны холодной воды. Давления в системе на всех не хватит, и из кранов потечет небольшая струйка воды.
Как решение этой проблемы можно использовать два варианта:
1. Брать в аренду выделенный сервер с высокой пропускной способностью канала. Но стоит это удовольствие дорого (в Агаве например от 1500 до 2000 в месяц за каждые дополнительные 10 Мбит/сек).
2. Использовать сервис Amazon Simple Storage Service (Amazon S3) либо готовящийся к запуску конкурирующий сервис от Google (Google Storage).
Я уже второй год использую именно второй вариант. И когда мне нужно дать доступ к какому-то файлу огромному количеству людей, я просто закачиваю файл в свою папку на сайте этого сервиса, получаю ссылку и даю ее людям. При этом стоит это не так дорого, потому что Вам не надо оплачивать высокоскоростной канал за весь месяц, Вы платите по факту за сгенерированный вашим файлом трафик.
Как пользоваться сервисом Amazon S3?
Процесс очень простой и состоит из 3-х шагов.
1. Регистрация в сервисе, где нужно ввести информацию о себе и данные своей дебетовой/кредитной карты, с которой будут списываться средства за их услуги.
После регистрации Вам выдадут Access Key ID и Secret Access Key.
2. Скачиваете и устанавливаете бесплатную программу CloudBerry Explorer Freeware.
3. После ввода своих данных в программу можете закачивать свои файлы на сервер Amazon S3.
На этом шаге остановлюсь подробнее.
Просто так на сервер закачать файл нельзя. Сначала надо создать так называемый Bucket (каталог) и уже туда нужно закачивать файлы.
После того как файлы закачаны, Вам нужно определиться, кто будет иметь к ним доступ.
В нашем случае нужно дать доступ всем желающим, поэтому жмем по файлу правой кнопкой мыши и выбираем ACL Settings и там жмем Public (everyone).
А дальше уже остается только узнать ссылку на этот файл. Для этого жмете по файлу правой кнопкой мыши и выбираете из контекстного меню пункт Web URL.
Теперь получившуюся ссылку размещайте на своем сайте.
Что касается стоимости трафика и оплаты, то здесь ситуация следующая. Итоговая оплата складывается из трех составляющих:
1. За хранение информации на их сервере.
2. За трафик, который был использован Вашим аккаунтом.
3. За запросы к файлам.
Подробная информация по ценам на их сайте.
Могу привести свой пример. Когда я запускал курс по JavaScript+jQuery, то видеопрезентацию этого курса я выложил именно на Amazon S3. В итоге, в первые дни её посмотрело и скачало более 30000 человек, а с моей карты в конце месяца сняли 250$.
Вот такой полезный сервис, который может избавить Вас от головной боли, когда возможностей своего хостинга уже не хватает.
Если у Вас есть что добавить, пишите свои мысли в комментариях.