Чому я не повинен використовувати Amazon S3 для розміщення статичної веб-сторінки


11

Я пам’ятаю, що десь читав, що сталася серйозна помилка щодо використання Amazon S3 для розміщення статичного веб-сайту. Я забув, що це було. Мені S3 здається ідеальним варіантом. Супер швидкий, супер масштабований, і платити по мірі поїздки.

Які негативні можливості використання S3 для розміщення статичного веб-сайту?


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

Відповіді:


11

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

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

Існує кілька основних недоліків під час розміщення на CDN, і це:

Файлів PHP немає

Підтримка PHP (Вам потрібно буде використовувати контактні форми через Ajax для отримання контакту.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. Плюс і вільний рівень теж непоганий
elssar

Amazon має службу dns під назвою Route 53, яка може бути використана для маршрутизації tld до піддомену www.
банди

Зокрема, AWS Route 53 має записи ALIAS, де ви вводите інше ім'я хоста (як це робиться з CNAME), але DNS-сервер здійснює пошук періодично (в секундах) і подає запис із IP-адресою (запис).
Стівен Остерміллер

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 www A на свій сайт (тому ви мали доступ до mydomain.com або www.mydomain.com). Однак це було виправлено у нещодавньому оновлення.

Особисто я думаю, що вони трохи завищені, і вам не вистачає безлічі приємних функцій (переадресації, htaccess тощо). Хоча S3 добре працює для розміщення великих файлів та зображень.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.