Развитие MyRating.autos: бессерверная архитектура
Работа над порталом автомобильных рейтингов продолжается. Сейчас активно внедряю автономные Telegram-боты для расширения функционала платформы. Переход на serverless облачную архитектуру вместе с React и TypeScript позволил значительно оптимизировать инфраструктуру.
Работа над MyRating.autos — флагманским проектом CodLod Studio — продолжается, и в последние месяцы фокус сместился с интерфейса на инфраструктуру. Рассказываю, как устроена архитектура портала автомобильных рейтингов и почему выбор в пользу serverless оказался правильным решением на старте.
Почему serverless, а не классический сервер
Портал агрегирует и обрабатывает данные с постоянно меняющейся нагрузкой: пики активности приходятся на конкретные периоды, а в остальное время трафик умеренный. Держать выделенный сервер под пиковую нагрузку означает переплачивать за простой в «спокойные» часы. Бессерверная (serverless) облачная архитектура решает эту проблему: инфраструктура масштабируется автоматически под реальную нагрузку, а платить приходится по факту использования, а не за зарезервированные мощности.
Стек: React, TypeScript и Firebase
Фронтенд построен на React с TypeScript — это даёт строгую типизацию бизнес-логики и заметно снижает число runtime-ошибок на проде, что критично для сервиса, которым пользуются ежедневно. Бэкенд-функции и хранилище данных завязаны на Firebase: облачные функции берут на себя обработку событий, а Firestore — хранение и синхронизацию данных в реальном времени. Такая связка позволяет держать инфраструктуру компактной без потери надёжности.
Автономные Telegram-боты как слой автоматизации
Отдельное направление развития — интеграция с Telegram Bots API. Боты работают автономно поверх serverless-функций и берут на себя рутинные процессы: уведомления пользователей, сбор обратной связи и часть операций, которые раньше требовали ручного вмешательства. Такой подход снижает нагрузку на команду поддержки и одновременно ускоряет отклик для пользователей портала — бот реагирует мгновенно, без участия человека на первой линии.
Что это даёт проекту
- Масштабируемость. Инфраструктура растёт вместе с трафиком без ручного вмешательства в конфигурацию серверов.
- Предсказуемые расходы. Оплата по факту использования вместо аренды мощностей «про запас».
- Меньше точек отказа. Managed-сервисы Firebase снимают часть ответственности за инфраструктуру с команды разработки.
- Автоматизация процессов. Telegram-боты закрывают рутинные задачи без участия человека.
В следующих материалах разберу конкретные кейсы оптимизации serverless-функций и то, как мы измеряем стоимость инфраструктуры на пользователя — это отдельная и не менее интересная тема.