Почему я не должен использовать Amazon S3 для размещения статической веб-страницы


11

Я помню, как читал где-то, что использование Amazon S3 для размещения статического веб-сайта было серьезной ошибкой. Я забыл, что это было, хотя. Мне S3 кажется идеальным вариантом. Супер быстрая, супер масштабируемая и платная, как вы идете.

Каковы недостатки использования S3 для размещения статического сайта?


Короче говоря, ответы ниже не приводят веских причин не использовать S3. Перенаправление www теперь легко разрешить.
ДжонАллен

Ответы:


11

Я все еще шокирован, когда узнаю, что люди полагают, что сети доставки контента стоят дорого, и в большинстве случаев их стоимость составляет всего 0,20 цента за ГБ.

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

Есть несколько серьезных неудач при размещении на CDN, а именно:

Нет файлов PHP

Поддержка PHP (вам нужно было бы использовать контактные формы через Ajax для получения contact.php из других источников, HTML-методы отстой - если вам не нужна контактная форма, тогда (круто!) Для таких вещей, как комментарии, вы можете использовать Disqus, который является JavaScript.)

Проблемы CNAME

К сожалению, большинство CDN не поддерживают CNAME без www, поэтому вы не можете разрешить домен, когда кто-то забудет www, не большая проблема, но есть способы обойти это. Вы настраиваете EC2 или общий хостинг и позволяете ему обрабатывать не-www с перенаправлением. Поэтому, когда кто-то забывает www, он связывается с сервером, а затем перенаправляет на CDN правильно. Альтернативный метод заключается в том, что вы выбираете CDN, который поддерживает это - я полагаю, что Limelight делает, но Amazon и Rackspace - нет. Я слышал, что Limelight размещает DNS и вносит изменения вручную в своей системе, я никогда не делал этого сам, поэтому я не могу подтвердить, что они делают или нет.

Обновление контента

Другой недостаток заключается в том, что вам нужно очистить содержимое или файлы, которые вы редактируете, например, вы делаете некоторые дополнения в index.html, вам нужно либо настроить контейнер с коротким сроком действия, либо вручную удалить этот файл из кеш, поэтому он обновляется во всем мире.

Резюме

Размещение статического сайта в CDN - это просто фанатично - я запускаю несколько статических сайтов в CDN, и они фанатичны, я использую только 1-2 ГБ на каждом сайте и получаю счета за £ 0,24 р за каждый сайт, что дешевле, чем общий хостинг, и дает вам производительность выделенного сервера. Если вы собираетесь настроить небольшой VPS, отличный от EC2, для перенаправления, то любой VPS, имеющий 128 МБ, сделает это. Вы можете получить дешевый за 1 доллар в месяц. Только Google 128 МБ VPS или VPS под 5 долларов в месяц - сотни компаний делают VPS с низкой спецификацией для арахиса, что поможет.


1
Cloudflare не имеет проблем с не-www cname. Плюс свободный уровень тоже неплох
elssar

У Amazon есть служба DNS, называемая Route 53, которая может быть использована для направления tld на поддомен www.
банда

В частности, AWS Route 53 имеет записи ALIAS, в которые вы вводите другое имя хоста (как вы делаете с CNAME), но DNS-сервер периодически выполняет поиск (в секундах) и обслуживает запись с IP-адресом (запись A).
Стивен Остермиллер

2

Проблема в части «плати, как ходишь».

Если вы получаете тонны трафика (например, DOS-атака или очень популярное сообщение или файл в блоге), вы будете платить за это.

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


О чем стоит подумать: Heroku позволяет вам платить столько, сколько вы хотите, но вы можете потерять некоторых посетителей, которые не могут получить доступ к сайту. AWS, с другой стороны, позволяет вам захватить всех посетителей, но вам придется заплатить за это. В зависимости от того, настроили ли вы рекламу / какую-либо другую форму конвертации кликов в наличные, ваши требования к оплате по мере использования могут отличаться; Например, небольшое интересное веб-приложение может выиграть от Heroku (или аналогичного сервиса).
Абхишек Дивекар

2

S3 не предназначен для использования в качестве единственного инструмента AWS для статического хостинга веб-сайтов. Рекомендуемый подход - поместить CloudFront перед экземпляром S3, чтобы CloudFront мог обрабатывать кэширование. Я полагаю, что это также устранит вашу проблему с уплатой кучи за увеличение трафика, так как CloudFront будет использовать кеш для обслуживания файлов, а не S3. Конечно, вам придется платить за CloudFront, но стоимость будет меньше (я думаю).

Вот статья об этом добавлении CloudFront на ваш сайт S3:

http://docs.aws.amazon.com/gettingstarted/latest/swh/getting-started-create-cfdist.html


1

Это на самом деле немного завышена с точки зрения пропускной способности. До недавнего времени у них также была проблема, заключающаяся в том, что вы не можете сопоставить свою @ и свою запись www A с вашим сайтом (поэтому у вас либо был доступ к mydomain.com, либо www.mydomain.com). Однако это было исправлено в недавнем обновлении.

Лично я думаю, что они немного завышены, и вам не хватает многих приятных функций (перенаправления, htaccess и т. Д.). S3 хорошо работает для размещения больших файлов и изображений.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.