Хостинг и инфраструктура для небольшого приложения

By Manboo Studio3 min read
Запросить оценку проектаWhatsApp
Хостинг и инфраструктура для небольшого приложения

Хостинг — это расход, который появляется после завершения проекта, никогда не включается в смету и продолжается каждый месяц столько, сколько существует приложение.

Что действительно нужно приложению в первый год

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

Компоненты и их назначение:

  • Сервер приложения — выполняет код. Размер конфигурации определяется числом одновременных пользователей, а не зарегистрированных пользователей.
  • База данных — обычно наиболее важный для производительности компонент, на который в первую очередь стоит направить расходы.
  • Файловое хранилище — пользовательские загрузки, документы, изображения. Его объём стабильно растёт, а стоимость единицы хранения невысока.
  • Домен и сертификат — небольшие ежегодные расходы; сертификат должен обновляться автоматически, иначе сайт перестанет работать в заранее известную дату.
  • Доставка электронной почты — для транзакционных писем нужен специализированный сервис доставки, поскольку письма, отправленные с сервера приложения, обычно попадают в спам.
  • Резервные копии — должны храниться отдельно от сервера и быть проверены как минимум один раз.

Расходы, которые легко не учесть

Сметы обычно охватывают разработку. Следующие расходы повторяются:

  1. Сам хостинг — ежемесячно.
  2. Хранилище резервных копий, объём которого растёт вместе с данными.
  3. Исходящий трафик, который может стать неожиданной статьёй расходов для приложений с большим количеством медиаконтента.
  4. Доставка электронной почты — обычно тарифицируется в зависимости от объёма.
  5. Сервисы push-уведомлений, если они применяются.
  6. Учётные записи разработчиков в магазинах приложений — ежегодно, для нативных приложений.
  7. Подписки на сторонние API — карты, SMS, сервисы ИИ. Часто это крупнейшая регулярная статья расходов и наиболее изменчивая.
  8. Мониторинг и отчётность об ошибках, для которых бесплатных тарифов обычно достаточно на начальном этапе.

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

Резервные копии и то, что часто пропускают

Резервная копия, из которой никогда не выполнялось восстановление, — лишь гипотеза. Важен именно процесс восстановления: его следует протестировать один раз до запуска и периодически после него.

Нужно определить три параметра:

  • Частота — какой объём данных вы можете позволить себе потерять. Ежедневное резервное копирование означает возможность потери данных за срок до одного дня.
  • Срок хранения — насколько далеко назад можно восстановиться. Это важно, поскольку некоторые проблемы обнаруживаются лишь через несколько недель.
  • Расположение — резервная копия на том же сервере резервной копией не является.

Мониторинг

С первого дня стоит обеспечить два компонента, и для обоих существуют бесплатные тарифы:

Мониторинг доступности, который уведомляет ответственное лицо, когда сайт перестаёт отвечать. Без него первым о сбое узнаёт клиент.

Отчётность об ошибках, которая фиксирует ошибки приложения с достаточным контекстом для их диагностики. Без неё единственное, что можно сказать, — «это не работает», а воспроизведение проблемы занимает больше времени, чем её исправление.

На ком должны быть оформлены учётные записи

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

Клиент должен владеть учётными записями хостинга, домена и сторонних сервисов, а разработчику следует предоставить доступ. Не наоборот.

Если учётные записи оформлены на разработчика, смена разработчика превращается в переговоры, а не в передачу дел; при неблагоприятном завершении сотрудничества клиент может потерять доступ к собственной инфраструктуре. Это создаёт практические проблемы и в обычных обстоятельствах: платёжные данные, продление услуг и письма для восстановления доступа поступают туда, куда клиент не может попасть.

Правильная настройка в начале ничего не стоит, но впоследствии её может быть сложно изменить. Особенно важно, чтобы домен всегда был зарегистрирован на клиента.

Что нужно согласовать до начала разработки

  • Где будет размещено приложение и на чьей учётной записи.
  • Ориентировочная ежемесячная стоимость при запуске и при десятикратном увеличении использования.
  • Частота, срок хранения и расположение резервных копий, а также тест восстановления.
  • Кого и каким способом уведомляют при недоступности приложения.
  • Какие сторонние сервисы предполагают регулярную оплату и как меняется их стоимость при росте использования.

Связанные услуги Manboo

Запрос оценки проекта

Опишите цель продукта, текущий процесс, целевые платформы, ограничения и сроки решения. Мы оценим объём и предложим практичный следующий шаг.

Хостинг и инфраструктура для небольшого приложения

Добавить требования к проекту (необязательно — для оценки объёма и стоимости)
Мы используем эти данные только для рассмотрения и ответа на ваш запрос по проекту. Ознакомьтесь с политикой конфиденциальности. Пожалуйста, не отправляйте пароли и секретные ключи API.