100 гиг в месяц — это 38,6 килобайт в секунду
в чем смысл использования CDN?
просто с S3 нельзя отдать?
или там появляется дополнительный функционал по защите контента, которого нет в S3?
Насколько я знаю если Вы отдаете напрямую через S3, то Вы отдаете непосредственно с того сервера S3, на котором хранятся файлы, а не с ближайшего к пользователю, который запросил файл.
Это имеет значение, если я отдаю гигабайты в час, и пользователям в разных регионах при этом нужна приемлемая либо гарантированная скорость, например для видеопотока.
А так, мы просто добавляем еще одно звено, которое стоит существенных для экономической модели проекта денег, вследствие чего его создатели вынуждены экономить, используя custom origin.
Вот и интересно, какие выгоды это звено дает, по сравнению с S3?
Механизм защиты контента, более дешевый трафик, что-то еще?
Вы наверно не совсем поняли цель статьи — я не веду пропаганду отказа от S3 в сторону custom origin. Я всего лишь описал как можно не использовать S3. Мне для моего проекта именно S3 был бы лишним звеном. В конечном итоге каждому, кого заинтересует S3 и CloudFront самому решать использовать их вместе или по отдельности.
У меня вопрос скорее, какие выгоды дает использование CDN вместо S3 в случае небольшого проекта.
Зачем нужен S3 понятно — низкая стоимость гарантированного хранения данных, более дешевый трафик, приемлемая скорость раздачи.
В случае CDN всегда казалось, что он дороже, потому что точки отдачи контента разнесены по регионам, что дает возможность автоматически обеспечить относительно гарантированную скорость раздачи.
Но если вам это не нужно, то зачем CDN?
В своем проекте я собираюсь раздавать видео файлы, так что меня в первую очередь интересует скорость отдачи и цена за трафик. Хранится они будут у меня на сервере, так что S3 мне совсем не нужен и мне очень подошло, что Amazon добавил custom origins в CloudFront
То есть CDN будет большим промежуточным кэшем
Но все же лучше попробовать, вдруг скорость раздачи в S3 тоже окажется нормальной, и можно будет сэкономить
Понятно, что там разница в центах, но может набежать прилично в общей сумме…
В случае с custom origin я плачу только за трафик, а если буду использовать S3 даже без CloudFront то буду платить и за трафик и за дисковое пространство. Где тут выгода?
Ошибаетесь. Если ваши правила по разграничению доступа по IP работают, это значит, что статику отдает Apache и передает их nginx. Т.е. картинки раздают два сервера, по очереди. Если же статика отдается только через nginx, то эти правила не более чем декорация, nginx их не видит и раздает всем подряд. Одно из двух, выбирайте.
Amazon CloudFront + Custom Origins