Как я выбирал стек для проекта: NestJS или FastAPI 🚀

Передо мной стояла задача: раз в сутки обрабатывать более 1 млн строк из Excel и сохранять данные в PostgreSQL. Нужно было найти оптимальное решение, которое: ✅ Быстро обработает большой объем данных. ✅ Гибко масштабируется. ✅ Останется удобным в поддержке и развитии.

Рассматривал два варианта для backend'а: 🔹 FastAPI (Python) – быстрый, удобный для асинхронных задач и работы с данными. 🔹 NestJS (TypeScript) – мощный, модульный, отлично подходит для построения API.

🔥 Какой стек выбрал и почему? Решил использовать оба, разделив их роли:

NestJS – основной API: Отвечает за работу с пользователями, авторизацию. Выполняет CRUD-операции. Подключается к PostgreSQL через Prisma. Направляет задачи на обработку данных в очередь.

FastAPI – обработка больших данных: Загружает 1M+ строк из Excel. Преобразует их в нужный формат. Работает в фоне через Celery + Redis. Принимает задачи от NestJS через HTTP/gRPC.

Очереди задач (Redis / RabbitMQ / Kafka): NestJS отправляет задачи на обработку. FastAPI забирает их из очереди и выполняет.

🛠 С какими проблемами столкнулся? 1️⃣ NestJS не мог подключиться к PostgreSQL → оказалось, использовался старый volume. Решение: очистил volume, пересоздал контейнеры. 2️⃣ Prisma Studio не открывался по localhost:5555 → добавил проброс порта в docker-compose.yml. 3️⃣ Контейнеры имели нестабильные имена (backend-nestjs-1, backend-db-1) → явно задал container_name.

Итог NestJS отлично справляется с API и обработкой пользователей. FastAPI быстро загружает и преобразует большие файлы. Redis / RabbitMQ помогают эффективно распределять задачи. Теперь система настроена и готова к дальнейшему развитию! 🚀

А как вы обрабатываете большие объемы данных? Делитесь опытом в комментариях! 👇

Как я выбирал стек для проекта: NestJS или FastAPI 🚀 | Сетка — новая социальная сеть от hh.ru
repost

89

input message

напишите коммент

еще контент автора

еще контент автора

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь