Почему проектировать заранее
Инфраструктура, которая росла «по мере проблем», обычно дороже и хрупче: серверы с разными версиями ПО, копии в непонятных местах, нет общей схемы. Переделка работающей системы требует переезда и окон простоя. Проект до запуска или до следующего этапа роста обходится дешевле.
Что решается на этапе проекта
- Роли серверов и их ресурсы.
- Где хранятся кеш, сессии и загружаемые файлы — от этого зависит, можно ли добавлять серверы.
- Схема резервного копирования и восстановления.
- Сеть между серверами и доступы.
- Мониторинг и оповещения.
- Тестовые среды и порядок выкладки.
Запас ресурсов
Ресурсы закладываются по текущей нагрузке, пикам и ожидаемому росту. Слишком большой запас — лишние расходы, слишком маленький — переезд через несколько месяцев. Проверить расчёт помогает нагрузочное тестирование.
Документы проекта
Схема, спецификация и план внедрения нужны не только нам: по ним провайдер выставляет предложение, а ваша команда или другой подрядчик понимает, как устроена система.