Как мы сократили расходы на S3 хранилище с 2000+ до менее 30 в месяц (и где это может пригодиться вам)
Эта информация для тех, кто уже работает с S3-хранилищами (типа MTS Cloud, Yandex Object Storage, Selectel S3 и т.д.). Если термин s3 вам не знаком, возможно, материал покажется слишком специфичным.
Суть проблемы:
В моем сервисе (ImgFactory) пользователи генерируют архивы с картинками. Эти архивы нужно временно хранить для скачивания. Ключевое слово — временно.
Российские (и не только) S3-провайдеры все чаще переходят на тарификацию по времени хранения файлов (помимо объема и запросов). Эта модель, пришедшая от гигантов вроде AWS S3 и Azure Blob Storage, означает: платите не только за гигабайты, но и за каждый час/день, пока файл лежит в хранилище.
Наше решение (и большая экономия):
Так как нашим пользователям нужно скачать результат в течение 24 часов (а чаще — сразу), длительное хранение архива не требуется.
Мы настроили автоматическое удаление всех файлов старше 24 часов.
Результат:
На старте: Использовали облако Билайн. Платили ~2000+ рублей в месяц за 2 ТБ.
Сейчас: Используем S3 от МТС Cloud (в ВК Клауде аналогичный тариф есть). Платим менее 30 рублей в месяц за 20 ТБ (с запасом)! Почему?
Файлы не накапливаются, удаляются ежедневно.
Тарифицируется только тот небольшой объем данных, который фактически находится в хранилище в момент очередного "снимка" биллинга (как, я понимаю, это у них происходит ежедневно, возможно чуть чаще).
По сути, платим только за то, что попадает в снэпшоты системы.
Где применить этот подход ВАМ?
Если ваш сервис генерирует файлы для немедленного/кратковременного скачивания, а не для долгосрочного хранения — этот метод ваш спасение! Примеры:
Генераторы PDF (отчеты, счета, документы).
Сервисы обработки/генерации изображений (превью, водяные знаки, коллажи).
Генераторы контента (тексты, аудио, видео через нейросети).
Сервисы конвертации файлов (из одного формата в другой).
Сервисы создания карт сайтов и иные.
Системы сборки проектов для скачивания.
Главное условие: 24 часа (или даже меньше!) — достаточный срок для скачивания результата вашими пользователями.
Итог:
Не платите за "воздух" в S3! Если ваши данные нужны только на время скачивания — настройте автоматическое удаление старых файлов. Результат, как видите, может быть ошеломляющим: экономия в 100 раз и более — это реально, как в нашем случае с 3000₽ до 30₽.
Что самое забавное, из-за низкой тарификации даже саппорт писал нам: "А чего вы не пользуетесь нашим облаком?". Мы честно ответили: "Пользуемся, просто тарификация у вас такая". Отстали...
Очень крутое решение для тех, кто начинает свой сервис, связанный с временным хранением файлов, как я считаю. Пользуйтесь.
Пруф (для тех, кто сомневается) из ЛК МТС прикрепляю. Это реальные счета за месяц. Уже около 1,5 года так работает у нас. Радуемся.