1. 실행
node.js 공식 홈페이지에 있는 기본 예제코드를 실행시켜보자.
해당 강의에서 코드를 제공해주고 있지만, 직접 홈페이지에 들어가보니 구현방식이 조금 다른 코드가 있었다. 이게 최신 버전이니 해당 코드를 가져와봤다.
// node.js 를 통해 웹서버를 만들고 해당 웹 서버가 1337번 포트를 listening 하도록 시키는 코드
// hostname으로 접속한 사용자의 요청에 응답
const http = require('http');
const hostname = '127.0.0.1';
const port = 1337;
const server = http.createServer((req, res) => { //서버 생성.
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
그리고 이전 강의에서 했던 것처럼 cmd 창에서 node 명령어를 이용해 해당 js 파일을 실행시키면 다음과 같이 나온다.
C:\Users\SAMSUNG\dev\study\js\server_side_javascript>node webserver.js
Server running at http://127.0.0.1:1337/
해당 주소를 그대로 입력하면 Hello World 라고 뜨는 웹 페이지가 나오는 것을 확인할 수 있다.
2. 인터넷의 동작 방법
서버와 클라이언트가 존재하고, 서버는 클라이언트의 요청을 받아서 응답을 보낸다. 도메인과 ip 주소에 대해서도 간단하게 설명하는데, 도메인은 naver.com 처럼 우리가 주소창에 입력하는 별칭 같은 느낌이고, 실제로는 ip 주소를 통해 해당 서버에 접속한다. 이 내용은 컴퓨터 네트워크 시간에 자세하게 배웠다.
이때, 해당 서버에 여러 개의 서버 어플리케이션이 설치되어 있을 수 있는데 이는 port 번호를 통해 관리된다.
사용자가 http://a.com:80 라고 요청을 보낸다면, a.com 에 연결된 ip 주소를 가진 서버의 80번 포트에 연결된 웹 서버에 연결해달라는 요청인 것이다. 하지만 이때 80번 포트는 생략이 가능한데, http 라는 것이 웹 브라우저를 가리키기 때문에 자동으로 80번 포트를 연결하기로 약속이 되어 있기 때문이다. 그러면 80번포트에서 listening 하고 있던 웹 서버가 클라이언트의 요청에 응답하게 된다.
3. 정리
node.js 에서 공식으로 제공하는 예제가 해당 코드인 것을 통해서 무엇을 알 수 있을까?
node.js 는 서버 쪽에 위치하면서, 빠르고 편리하게 서버로 들어오는 요청을 응답하는 어플리케이션을 만드는 기반 시스템 제공하는 것에 제일 중점을 두고 있다.. 는 점을 알 수 있다고 한다. 그래서 적절한 어플리케이션을 node.js로 구현한다면 좋은 성능을 낼 수 있을 것이다.
** cmd 창에서 node 명령어를 통해 js 파일을 실행시킨 후 빠져나오고 싶을 때는 간단히 Ctrl+C를 누르면 된다.
'스터디📖 > Node.js' 카테고리의 다른 글
[nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 - 섹션 5. Express (0) | 2022.02.02 |
---|---|
[nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 - 섹션 4. 동기와 비동기 (0) | 2022.02.02 |
[nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 - 섹션 3. 콜백 (Callback) (0) | 2022.02.01 |
[nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 - 섹션 2. 모듈 (0) | 2022.02.01 |
[nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 - 섹션 0. 설치 및 오리엔테이션 (0) | 2022.01.29 |