Миграция сайта с CloudFront на DigitalOcean

01 September 2016 #vps #services #cloudfront

Не так давно полностью перенес свой сайт на CloudFront, отказавшись от сторонних серверов. И сайт стал быстро работать и платил за это копейки. Но при очередной попытке поэкспериментировать со своим сайтом, неожиданно для себя получил счет от Амазона почти на $10. В результате разбирательств, выяснил, что причиной всему является инвалидация страниц после их обновления (источник):

За первые 1000 путей в месяц, для которых запрашивается аннулирование, дополнительная плата не взимается. За каждый следующий путь, который нужно аннулировать, взимается 0,005 USD.

Так как у меня на сайте более 300 страниц, то, к примеру, при обновлении шаблона страниц сайта, потребуется провести полное обновление. То есть уже 300 запросов. Три подобных запроса бесплатно, за все остальное будет взиматься дополнительная плата.

После того, как выяснил данный факт, довольно долго ничего не делал с сайтом. И времени на него просто не было. И очень озадачивало то, что теперь при каждом изменении приходиться рассчитывать количество страниц, которое будет затронуто этим изменением. И вот настал тот день, когда мне это надоело.

Стало понятно, что использовать CloudFront в качестве хостинга для обновляемого ресурса не имеет ровными счетом никакого смысла. CloudFront оптимален для статичных ресурсов, таких как стили, изображения, скрипты. И после того, как понял данный факт, задумался о том, куда мигрировать? Думал недолго, так как давно уже являюсь клиентом DigitalOcean, который меня всем устраивал и продолжает устраивать.

Менее чем за минуту создал новую машинку в Лондоне. Сразу включил поддержку IPv6. После чего довольно долго разбирался, как настроить Travis CI для публикации изменений на свой собственный сервер, но разобрался, сейчас на объяснении не буду останавливаться, это тема отдельной статьи. Тут же провел целый ряд изменений на сайте, например, шрифты теперь подгружаются из кастомного CSS-файла, что снизило число запросов и ускорило загрузку.

И только сегодня завершил операцию полной миграции. Пришлось генерировать новый сертификат для сайта. На этот раз воспользовался услугами LetsEncrypt, и удивлением узнал, что их сертификаты выдаются всего на 3 месяца.

Сайт работает, ограничений на количество обновлений больше нет. И можно снова проводить эксперименты.