• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

express는 WAS(Web Application Server) 인가요?

22.04.04 14:30 작성 조회수 2.72k

2

안녕하세요? 

Spring에서 NestJS로 전향하기 위해서 강의를 열심히 듣고 있습니다.

nodejs나 nestjs를 공부하면서 express가 WAS인가 하는 궁금증이 들었습니다.

Node.js는 Javascript의 런타임 이고, express라는 웹 프로엠워크 이용하여 Web Application 구동해준다 라고 생각을 합니다만

express를 was라고 생각해도 맞는 걸까요 ?

답변 3

·

답변을 작성해보세요.

1

네 맞습니다. express와 NestJS 없이도 Node.js만으로 WAS를 구현할 수 있습니다. SSR, API 등 개발이 가능합니다. express, NestJS는 이를 편하게 도와주는 프레임워크인 것입니다.

이번 주말에 Node.js만으로 WAS의 기능을 하는 프로그램을 구현해보는 보충 강의를 업로드 해드리겠습니다.

남홍식님의 프로필

남홍식

질문자

2022.04.04

express없이 Nodejs를 구현할 수 있는게 상상이 가지 않는군요...

이걸 보충 강의로 업로드 해주신다니...너무나도 감사하고 영광입니다!!!

0

남홍식님의 프로필

남홍식

질문자

2022.04.04

답변 감사합니다.

이해가 되지 않는 부분이 있는데요

"자바 진영의 WAS 기능은 엄밀히 말해, Node.js로 구현이 가능합니다."

이말은 즉 express 없이 Node.js독자적으로 WAS의 기능인 정적인 리소스 제공과 동적인(애플리케이션 로직 수행) 리소스 제공이 가능하다는 말씀이신가요?

자바 직군에 NestJS로 넘어가다보니 비교 해서 공부 하게 되서 문제인거 같은데 WAS라는 단어 자체가 자바 진영에서 사용하는 단어 여서 그런거 인지 혼란 스럽네요 ㅎㅎ

 

0

안녕하세요!

JS는 본래 브라우저에서만 동작할 수 있는 언어였으나 Node.js를 통해 JS 언어로 브라우저 뿐만 아니라 각종 범용 프로그램을 만들 수 있게 되었습니다. Node.js는 JS의 런타임이고 쉽게 말해, JS 실행기라고 이해하시면 될 것 같습니다. express는 미니멀 웹 프레임워크이며 NestJS는 express 프레임워크를 보다 더 구조화되고 디자인 패턴에 맞게 사용할 수 있도록 도와주는 express의 메타 프레임워크의 역할을 합니다. 물론 NestJS 자체만으로 사용할 수도 있고 express와 비슷한 fastify의 메타 프레임워크로서도 사용할 수 있습니다.  자바 진영의 WAS 기능은 엄밀히 말해, Node.js로 구현이 가능합니다. 

정리하자면, Node.js는 V8 엔진 기반의 JS 런타임(실행기)이며, WAS 기능을 구현할 수 있습니다. express는 미니멀 웹 프레임워크이고 NestJS는 웹 프레임워크입니다.