1. Controller Controller 란 외부(사용자)의 요청을 받는 모듈이다. 하나 이상의 클라이언트가 보내는 요청을 처리하고, 요청을 보낸 클라이언트에게 응답을 반환하는 역할을 한다. 라우팅 메커니즘 어떤 Controller가 해당 요청을 처리할지 조정한다. 보통은 각각의 Controller는 하나 이상의 경로가 있으며, 각기 다른 경로는 각기 다른 행동을 수행한다. 다음과 같이 다양한 Route 정보와 Action 정보를 담고 있는 HTTP Method 가 하나의 기능을 담당하고 있는 Controller 에 가지고 있을 것이다. Nest 는 기본 Controller 를 생성하기 위하여 클래스와 데코레이터를 사용한다. import { Controller, Get, Param } from '@n..
NestJS
1. NestJS 란? NodeJS 에 기반을 둔 웹 API Framework. 그럼 NodeJS 란? API 란? 2. NodeJS 의 특징과 NestJS 단일 쓰레드에서 구동되는 non-blocking I/O 이벤트 기반 비동기 방식 여러 개의 작업 요청이 한번에 들어올 때 각 작업을 처리하기 위한 쓰레드를 만들고 할당하는 방식을 멀티 쓰레드 방식이라고 한다. 멀티 쓰레드 방식은 여러 작업을 동시에 처리하므로 작업 처리 속도가 빠른 장점이 있지만, 공유 자원을 관리하려는 노력이 많이 들고, 잘못 작성된 동기화로 인해 락에서 빠져나오지 못하는 경우가 발생하기 쉽다. 쓰레드가 늘어날 때 마다 메모리를 소모하므로 메모리 관리 또한 필요하다. NodeJS에서는 하나의 쓰레드에서 작업을 처리한다. Applic..