Технические требования
Стек, требования к серверам и к инфраструктуре заказчика. Расчёт выполнен под заявленный масштаб: 1000–5000 участников программы, порядка 5 000 заказов в месяц.
Стек
Всё программное обеспечение платформы — открытое и свободно распространяемое. Лицензионных платежей нет, приобретать и продлевать лицензии не требуется.
Требования к серверам
Два контура: продуктивный и тестовый. Тестовый нужен для приёмки по согласованным сценариям и для проверки акций до публикации, поэтому он входит в обязательный минимум.
| Контур | vCPU | RAM | Диск | Назначение |
|---|---|---|---|---|
| Продуктив — приложение | 4 | 8 ГБ | 80 ГБ SSD | ASP.NET Core, RabbitMQ, Nginx |
| Продуктив — СУБД | 8 | 32 ГБ | 500 ГБ SSD | PostgreSQL, витрины аналитики, локальные копии |
| Тестовый контур | 4 | 16 ГБ | 200 ГБ SSD | Все компоненты на одном сервере |
| Реплика СУБД (по желанию) | 4 | 16 ГБ | 500 ГБ SSD | Горячий резерв и разгрузка аналитических запросов |
Объём данных
Расчёт от заявленных показателей. Основной объём дают не сами заказы, а история бонусных операций и журнал расчётов, который сохраняется вместе с заказом.
| Что храним | За год | За три года | Комментарий |
|---|---|---|---|
| Участники программы | до 5 000 | до 15 000 | С учётом роста базы |
| Заказы и позиции | ~60 000 | ~180 000 | Порядка 300 000 строк состава в год |
| Операции бонусного счёта | ~200 000 | ~600 000 | Начисления, списания, сгорания, сторно |
| Объём базы с индексами | 8–12 ГБ | 25–40 ГБ | Без сжатия, с запасом на витрины |
Контейнеризация
Поставка идёт образами Docker и файлом Docker Compose. Оркестратор вроде Kubernetes при таком масштабе только усложнил бы эксплуатацию, не дав ничего взамен.
Сетевые доступы
Платформа не требует доступа в интернет для работы. Все соединения — внутри периметра заказчика.
| Направление | Протокол | Назначение |
|---|---|---|
| Сайт и мобильное приложение → платформа | HTTPS | Расчёт корзины, резерв, подтверждение, возврат |
| 1С ERP ↔ платформа | HTTPS или файловый обмен | Каталог, оплаты, отгрузки, возвраты |
| Платформа → SMS-гейты | HTTPS | Два действующих гейта заказчика |
| Платформа → почтовый сервер | SMTP | Корпоративное решение для email-рассылок |
| Система аналитики → СУБД | PostgreSQL wire protocol | Подключение BI и выгрузка сырых данных |