21.1.3 Koa
Node.js 환경에서 웹 서버를 구축할 때는 보통 Express, Hapi, Koa 등의 웹 프레임워크를 사용합니다. 20장에서 서버 사이드 렌더링 서버를 구현할 때 Express를 사용했지요? 21장의 백엔드 개발에서는 Koa라는 웹 프레임워크를 사용해 보겠습니다.
▲ 그림 21-2 Koa
Koa는 Express의 기존 개발 팀이 개발한 프레임워크입니다. 기존 Express에서 고치고 싶었던 점들을 개선하면 내부 설계가 완전히 바뀌기 때문에 개발 팀이 아예 새로운 프레임워크를 개발했다고 합니다.
Express는 미들웨어, 라우팅, 템플릿, 파일 호스팅 등과 같은 다양한 기능이 자체적으로 내장되어 있는 반면, Koa는 미들웨어 기능만 갖추고 있으며 나머지는 다른 라이브러리를 적용하여 사용합니다. 즉, Koa는 우리가 필요한 기능들만 붙여서 서버를 만들 수 있기 때문에 Express보다 훨씬 가볍습니다.