Node.js / NestJS

Wydajność i wdrażanie w chmurze

Event loop, blocking I/O, profiling, memory leaks, optymalizacja zapytań, kompresja, clustering, worker threads, load balancing, strategiczne cache'owanie (Redis + HTTP), AWS (ECS, Lambda), serverless, strategie wdrażania (blue/green, canary)

30 pytań z rozmów·
Senior
1

Które podejście optymalizuje wdrażanie kontenerów NestJS w AWS ECS?

Odpowiedź

Aby zoptymalizować wdrożenie ECS kontenerów NestJS: użyj multi-stage Docker builds, aby zmniejszyć rozmiar finalnego obrazu (etap build + minimalny etap production), wykorzystaj layer caching Docker, aby przyspieszyć budowanie, użyj ECR (Elastic Container Registry) w tym samym regionie, aby zmniejszyć latency, skonfiguruj odpowiednie health checks, użyj Fargate, aby uprościć zarządzanie, zdefiniuj optymalne resource limits (CPU/memory), zaimplementuj graceful shutdown dla SIGTERM. Zoptymalizowany obraz Node.js alpine może mieć <100MB w porównaniu do >1GB bez optymalizacji.

2

Jakie są główne fazy event loop w Node.js?

Odpowiedź

Event loop Node.js ma sześć głównych faz: timers (setTimeout/setInterval), pending callbacks (odroczone callbacki I/O), idle/prepare (wewnętrzna), poll (pobieranie nowych zdarzeń I/O), check (setImmediate) i close callbacks. Każda faza ma kolejkę FIFO callbacków do wykonania. Faza poll jest najważniejsza, ponieważ obsługuje zdarzenia I/O.

3

Jaki jest wpływ operacji blokującej (blocking I/O) w Node.js?

Odpowiedź

Operacja blokująca w Node.js blokuje cały event loop, uniemożliwiając przetwarzanie wszystkich innych operacji. Znacznie pogarsza to wydajność, ponieważ Node.js jest jednowątkowy. Operacje synchroniczne, takie jak fs.readFileSync, crypto.pbkdf2Sync lub intensywne pętle, blokują główny wątek. Zawsze używaj wersji asynchronicznych lub deleguj do worker threads.

4

Jak zidentyfikować memory leak w aplikacji Node.js na produkcji?

5

Którego narzędzia użyć do profilowania wydajności CPU w aplikacji NestJS?

+27 pytań z rozmów

Opanuj Node.js / NestJS na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo