내부에서 무슨 일이 일어나고 있나요?
레벨 3에서는 메시지를 메모리 배열에 저장했어.
const vzkazy = [
{ jmeno: "Martin", text: "First message!" },
];
서버가 계속 실행되는 한 훌륭하게 작동해. 그러나 중지(Ctrl+C)하고 다시 시작하면 배열이 비어 있어. 메시지가 사라졌어. 왜?
RAM(컴퓨터의 메모리)은 교실의 화이트보드와 같기 때문야. 퇴실할 때 누군가가 이를 깨끗하게 닦아줍니다. 영구 저장을 위해서는 디스크(파일 또는 데이터베이스)가 필요해.
💡
**디스크 vs. 메모리:** 디스크에 있는 파일은 다시 시작해도 유지돼. 배열`server.js`그렇지 않어. 이것이 바로 대형 웹사이트가 MySQL, PostgreSQL, SQLite와 같은 데이터베이스를 사용하는 이유야. **SQLite**부터 시작할 거야. 단일 파일의 데이터베이스이며 추가 서버가 필요하지 않어.
보여줄게: 다시 시작하면 어떻게 되나요?
- 방명록 강의에서 서버를 시작해(
node server.js). - React를 통해 새 메시지를 보냅니다.
- 서버를 중지(Ctrl+C)하고 다시 시작해.
- 브라우저에서 페이지를 새로 고치해. 메시지가 사라졌어.
이것은 코드의 버그가 아닙니다. 그것은 기억의 속성이다. 이제 데이터베이스가 존재하는 이유를 알게 되었어.
네 차례 💪
- 위의 실험을 반복하고 무슨 일이 일어났는지 정확히 기록해 두세요(프로젝트의 메모에 남을 수도 있음).
- 오픈
server.js그리고 다음과 같은 줄을 찾으세요const vzkazy = [...]. 댓글 추가:// WARNING: this disappears after a server restart!3. 자신의 프로젝트에 대해 생각해 보세요. 학교/클럽/저널 웹사이트에서 사라져서는 안 되는 것은 무엇야?? (일정? 사진? 메시지?) – 2~3가지를 나열해.
✅
**확인:** 메모리(임시)와 디스크(영구)의 차이점을 이해했어. 다음 강의에서는 디스크와 온라인에 코드를 백업하는 Git에 대해 배우게 돼. 그런 다음 SQLite – 메시지를 영원히 저장해.
이번 수업에서 배울 점
- 배열의 데이터
server.js서버가 다시 시작될 때까지만 유지돼. - 영구 저장소 = 디스크의 파일 또는 데이터베이스.
- 레벨 4에서는 Git(코드 백업) 및 SQLite(영구 방명록)로 연결돼.
© 2026 Ing. Martin Polak / AlgoRhino · 콘텐츠 이용 약관