← 레벨 4 – 데이터 프로

수업 1/6 ⏱ 20 분 무료 미리보기

다시 시작하면 데이터가 사라지는 이유

서버가 중지되면 방명록이 메시지를 잊어버리는 이유와 그에 대해 우리가 할 일을 알아보세요.

내부에서 무슨 일이 일어나고 있나요?

레벨 3에서는 메시지를 메모리 배열에 저장했어.

const vzkazy = [
  { jmeno: "Martin", text: "First message!" },
];

서버가 계속 실행되는 한 훌륭하게 작동해. 그러나 중지(Ctrl+C)하고 다시 시작하면 배열이 비어 있어. 메시지가 사라졌어. 왜?

RAM(컴퓨터의 메모리)은 교실의 화이트보드와 같기 때문야. 퇴실할 때 누군가가 이를 깨끗하게 닦아줍니다. 영구 저장을 위해서는 디스크(파일 또는 데이터베이스)가 필요해.

💡
**디스크 vs. 메모리:** 디스크에 있는 파일은 다시 시작해도 유지돼. 배열`server.js`그렇지 않어. 이것이 바로 대형 웹사이트가 MySQL, PostgreSQL, SQLite와 같은 데이터베이스를 사용하는 이유야. **SQLite**부터 시작할 거야. 단일 파일의 데이터베이스이며 추가 서버가 필요하지 않어.

보여줄게: 다시 시작하면 어떻게 되나요?

  1. 방명록 강의에서 서버를 시작해(node server.js).
  2. React를 통해 새 메시지를 보냅니다.
  3. 서버를 중지(Ctrl+C)하고 다시 시작해.
  4. 브라우저에서 페이지를 새로 고치해. 메시지가 사라졌어.

이것은 코드의 버그가 아닙니다. 그것은 기억의 속성이다. 이제 데이터베이스가 존재하는 이유를 알게 되었어.

네 차례 💪

  1. 위의 실험을 반복하고 무슨 일이 일어났는지 정확히 기록해 두세요(프로젝트의 메모에 남을 수도 있음).
  2. 오픈server.js그리고 다음과 같은 줄을 찾으세요const vzkazy = [...]. 댓글 추가:// WARNING: this disappears after a server restart!3. 자신의 프로젝트에 대해 생각해 보세요. 학교/클럽/저널 웹사이트에서 사라져서는 안 되는 것은 무엇야?? (일정? 사진? 메시지?) – 2~3가지를 나열해.
**확인:** 메모리(임시)와 디스크(영구)의 차이점을 이해했어. 다음 강의에서는 디스크와 온라인에 코드를 백업하는 Git에 대해 배우게 돼. 그런 다음 SQLite – 메시지를 영원히 저장해.

이번 수업에서 배울 점