Почему я не должен использовать 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, до сих пор нет возможности поставить ограничение на то, что ты платишь. Вы можете настроить оповещения о выставлении счетов, но если ваш платеж достигает максимального бюджета, единственный вариант - закрыть сайт, или вы будете платить за весь трафик, который получаете.

peterlozano
источник
О чем стоит подумать: 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

user1335432
источник
1

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

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

Kyros
источник