티스토리 뷰

Node.js

[Node.js]서버 파일 분산

LHOIKTN 2021. 5. 1. 01:24

"분산하여 관리하면 유지보수 및 확장에 용이하다." 

 

분산처리? 이런거 정보처리기사 공부할 때 참 많이 봤던 내용이다.  컴퓨터는 뭐든 나누는 것을 좋아한다.

DB 정규화 하는 작업도 결국 나누는 거고, ,네트워크도, 운영체제도 계층으로 나눈다.   

소프트웨어의 결합도를 낮추고 응집도를 높이는 것도 결국 적절한 기능으로 잘 나누기 위함이다. 

 

분산관리는 우리가 이미 하고 있다.   

예를 들어서, 내가 수 많은 사진파일을 한 폴더에 넣어 관리한다면 내가 원하는 사진을 찾기까지 꽤 시간이 걸릴 것이다.  하지만 내가 사진폴더에 하위 폴더를 생성하여, 사진파일을 찍은 시기에 따라 정리했기 때문에 나중에 다시 찾아볼 때 훨씬 쉽게 찾을 수 있다. 

 

특히 소프트웨어는 한번 만들고 끝나는 것이 아니라 끊임없이 유지보수를 해줘야하는데, 분산하여 관리한다면 더 쉽게 할 수 있을 것이다. 

 

이번에는 게시판 서버파일을 라우터를 사용하여 나누는 작업을 해봤다. 

 

기존 나의 서버는 이런 모양인데 

이거를 

이런 식으로 나눠보려고 한다. 

애걔? 겨우? 

물론 지금은 규모가 작아서 나누는 게 더 귀찮을 수도 있다. 하지만 규모가 커진다면 나눠서 관리하는 것이 작업을 하는 데 있어 훨씬 수월할 것이다. 

 

우선 서버파일이 있는 폴더에 routes라는 폴더를 만들고 그 안에 board.js 파일과 index.js파일을 만들었다. 

우선 index.js 와 board.js에 라우터를 생성해줘야한다. 라우터? 네트워크 계층의 라우터와 비슷한 역할을 하는 녀석들이다. 위 그림의 초록색 부분에 해당하는 것들을 만들어줘야한다. 

 

index.js에는

const express = require('express');
const router = express.Router(); 

 

board.js에는 

const express = require('express');
const router = express.Router();

 

 

이렇게 라우터를 만들어준 다음에 server.js에서 우선 라우터를 연결해줘야한다. 

const main = require('./routes/index');
const board = require('./routes/board');

 

 

const express = require('express');
const app = express();
const main = require('./routes/index');
const board = require('./routes/board');

 그리고 라우터를 설정해줘야한다.  경로 / 로 들어오면  main이라는 라우터로 향하고, 

경로가 /board 로 시작하면 board라는 라우터로 향한다.

 

그리고 라우터를 설정해준  index.js나 board.js에서  

router를 사용해서 express를 사용하면 된다. 

 

const express = require('express');
const router = express.Router();

// 여기서 get('/board/list')를 하지 않는 이유는 이미 앞에 server.js의 app.use('/board', board);
// 를 통해서 /board로 들어왔기 때문. 

router.get('/list', (req, res) => {

 

 


 

 

 

 

 

 

 

728x90

'Node.js' 카테고리의 다른 글

카카오 로그인 맛보기  (0) 2021.05.21
게시판 pagination  (0) 2021.05.03
0424 수업  (0) 2021.04.24
[Node.js] 0421 수업  (1) 2021.04.21
[Node.js]0420수업내용  (0) 2021.04.20
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함