Node.js: 프로덕션 백엔드를 위한 서버 사이드 JavaScript
Node.js는 비차단, 이벤트 기반 아키텍처를 사용하여 서버에서 JavaScript를 실행하며, 스레드 오버헤드 없이 수천 개의 동시 연결을 처리합니다. 모든 규모의 기업에서 REST API, 실시간 서비스, 마이크로서비스, 서버리스 함수를 구동하는 런타임입니다. 이 과정은 첫 번째 Express 라우트 설정부터 프로덕션 환경에서 복원력 있고 관찰 가능한 분산 시스템 설계까지 서버 사이드 Node.js의 전체 스택을 다룹니다.
학습 내용
Express.js로 RESTful API를 구축하고, MongoDB와 Mongoose로 데이터를 지속하며, 인증 및 인가 패턴으로 애플리케이션을 보호합니다. 이후 과정은 CPU 집약적 작업을 위한 Worker Threads, Streams와 Backpressure, Redis 캐싱 패턴, RabbitMQ 메시지 큐로 진행됩니다. 고급 주제에는 WebSockets을 통한 실시간 통신, Protocol Buffers를 사용한 gRPC 마이크로서비스, GraphQL API, Event Sourcing과 CQRS, 분산 추적 및 구조화된 로깅, V8 메모리 프로파일링과 서킷 브레이커, 재시도, 우아한 종료 같은 프로덕션 복원력 패턴이 포함됩니다.
학습 경로
22개 과정이 A1부터 C2까지 스팬합니다. 경로는 환경 설정과 첫 번째 REST API로 시작하고, TypeScript 도구 및 데이터 지속성 같은 B1 주제로 진행되며, Streams, Worker Threads, RabbitMQ와 Redis를 활용한 이벤트 기반 아키텍처를 포함한 B2에서 심화됩니다. C1 단계는 실시간 통신, 배포 및 확장성, 마이크로서비스 및 API 게이트웨이 설계, 성능 최적화, 보안 모범 사례, 관찰성을 다룹니다. 과정은 서버리스 함수, GraphQL, 고급 메모리 관리, 프로덕션 복원력을 포함한 C2로 마무리되며, 이는 규모 있게 Node.js를 운영할 때 직면하게 될 가장 어려운 운영 관련 문제들입니다.
작동 방식
각 과정은 실시간 피드백이 있는 내장 코드 에디터에서 완료하는 짧고 집중된 레슨으로 나뉩니다. 막힐 때마다 AI 튜터를 사용할 수 있으며, 답을 주지 않으면서 오류를 설명하고 개념을 안내합니다. 자신의 속도로 진행하고 프로덕션 작업에서 필요할 때마다 모든 레슨을 다시 방문할 수 있습니다.