Node.js / NestJS

Продуктивність і хмарне розгортання

Event loop, blocking I/O, profiling, memory leaks, оптимізація запитів, стиснення, clustering, worker threads, load balancing, стратегічне кешування (Redis + HTTP), AWS (ECS, Lambda), serverless, стратегії розгортання (blue/green, canary)

30 питань зі співбесід·
Senior
1

Який підхід оптимізує розгортання контейнерів NestJS в AWS ECS?

Відповідь

Щоб оптимізувати ECS-розгортання контейнерів NestJS: використовуйте multi-stage Docker builds для зменшення розміру фінального образу (стадія build + мінімальна стадія production), застосовуйте Docker layer caching для прискорення збірок, використовуйте ECR (Elastic Container Registry) у тому самому регіоні для зменшення latency, налаштуйте відповідні health checks, використовуйте Fargate для спрощення управління, визначте оптимальні resource limits (CPU/memory), реалізуйте graceful shutdown для SIGTERM. Оптимізований образ Node.js alpine може бути <100MB проти >1GB без оптимізації.

2

Які основні фази event loop у Node.js?

Відповідь

Event loop у Node.js має шість основних фаз: timers (setTimeout/setInterval), pending callbacks (відкладені I/O callbacks), idle/prepare (внутрішня), poll (отримання нових I/O подій), check (setImmediate) та close callbacks. Кожна фаза має FIFO-чергу callbacks для виконання. Фаза poll найважливіша, оскільки обробляє I/O події.

3

Який вплив блокуючої операції (blocking I/O) у Node.js?

Відповідь

Блокуюча операція в Node.js блокує весь event loop, перешкоджаючи обробці всіх інших операцій. Це суттєво погіршує продуктивність, оскільки Node.js однопотоковий. Синхронні операції, такі як fs.readFileSync, crypto.pbkdf2Sync, або інтенсивні цикли блокують головний потік. Завжди використовуйте асинхронні версії або делегуйте worker threads.

4

Як виявити memory leak у production-застосунку Node.js?

5

Який інструмент використовувати для profiling продуктивності CPU у застосунку NestJS?

+27 питань зі співбесід

Інші теми співбесід Node.js / NestJS

Основи Node.js

Junior
20 запитань

Основні API Node.js

Junior
25 запитань

Асинхронне програмування

Junior
25 запитань

Основи Express.js

Junior
20 запитань

Основи NestJS

Junior
23 запитань

Проєктування REST API

Junior
20 запитань

Валідація та DTO

Junior
20 запитань

Документація API та контракти

Junior
20 запитань

Обробка помилок

Junior
20 запитань

Юніт-тестування

Junior
20 запитань

Планування завдань

Junior
15 запитань

Модулі та DI у NestJS

Mid-Level
20 запитань

Конфігурація та керування середовищами

Mid-Level
20 запитань

Автентифікація JWT

Mid-Level
25 запитань

Авторизація та RBAC

Mid-Level
20 запитань

База даних з TypeORM

Mid-Level
30 запитань

Prisma ORM

Mid-Level
25 запитань

Middleware та Interceptors

Mid-Level
20 запитань

Завантаження файлів

Mid-Level
15 запитань

WebSockets

Mid-Level
20 запитань

GraphQL з NestJS

Mid-Level
25 запитань

Наскрізне тестування (End-to-End)

Mid-Level
20 запитань

Кешування з Redis

Mid-Level
20 запитань

Черги з Bull

Mid-Level
20 запитань

DevOps, Logging та CI/CD

Mid-Level
25 запитань

Docker та контейнеризація

Mid-Level
25 запитань

Мікросервіси

Senior
30 запитань

Найкращі практики безпеки

Senior
25 запитань

Опануй Node.js / NestJS для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно