3장. 노드 웹 서버 구축하기
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
이 장에서는 다음 내용을 다룹니다:
-
Node를 웹 인터페이스로 사용하기
-
Fastify로 Node 웹 앱 빌드하기
-
동적 콘텐츠로 정적 페이지 서비스하기
노드는 서버에서 JavaScript를 사용하는 것에 관한 것입니다. JavaScript 자체는 이미 본질적으로 비동기 언어이지만 2009년이 되어서야 표준 웹 브라우저 외부에서 사용되기 시작했습니다. 전 세계적으로 인터넷에 대한 의존도가 높아지면서 기업들은 이미 시장에 나와 있는 기술을 고려한 새롭고 혁신적인 개발 전략을 요구했습니다. 그 후, JavaScript는 프론트엔드 및 백엔드 개발에 사용되기 시작했고, Node의 단일 스레드 이벤트 루프를 통해 새로운 애플리케이션 디자인 패턴을 설정했습니다.
이 장에서는 웹 애플리케이션인 Node의 가장 일반적인 사용 사례와 이벤트 루프가 어떤 역할을 하는지 살펴봅니다. 이 장이 끝나면 Node의 가장 인기 있는 프로젝트 프레임워크인 Fastify를 사용하여 간단한 웹 서버와 보다 광범위한 애플리케이션을 모두 구축할 수 있게 됩니다.
프롬프트
지역 레스토랑인 '왓츠 페어 이즈 페어'의 소유자는 고객에게 더 나은 서비스를 제공하기 위해 자체 개발한 웹 애플리케이션에 약간의 돈을 투자하기로 결정했습니다. 그들은 랜딩 페이지, 정적 메뉴 및 운영 시간을 표시할 수 있는 경량 애플리케이션을 제작하는 데 도움을 받기 위해 열성적인 소프트웨어 엔지니어링 전문가인 여러분에게 연락을 취했습니다.
계획 수립
신중하게 검토한 결과, 이 비즈니스는 고객에게 정적 콘텐츠를 제공하기 위해 간단한 웹 서버만 있으면 된다는 사실을 알게 되었습니다. 이 경우 3개의 웹 페이지 콘텐츠만 지원하면 됩니다. 숙련된 Node 엔지니어라면 기본 제공 http 모듈을 사용할 수도 있지만, Fastify라는 인기 있는 외부 라이브러리로 작업하는 것이 더 유연하다는 것을 알고 있습니다. 프로그래밍을 시작하기 전에 그림 3-1과 같이 프로젝트의 요구 사항과 결과물을 다이어그램화합니다.
그림 3-1. 프로젝트 청사진
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access