프론트엔드와 백엔드의 전체 구조
- 컴퓨터
- 사용자는 자신의 컴퓨터에서 작업을 시작합니다.
- 프론트엔드 서버
- 코드 에디터(VSCode)에서 싸이월드 코드 작성.
- 라이브 서버를 통해 프론트엔드 서버를 실행.
- 사용자가 브라우저에 주소를 입력하면, 프론트엔드 서버에서 파일을 요청하고 브라우저에 화면을 렌더링.
- 백엔드 서버
- 브라우저에서 필요한 데이터를 백엔드 서버로 API 요청.
- 백엔드 서버는 데이터베이스에서 게시글(board) 정보를 저장하거나 불러와서 브라우저에 응답.
데이터베이스: SQL vs NoSQL
- 데이터베이스 종류
- SQL: 표(Table) 형식으로 구성된 데이터베이스.
- NoSQL: 서류(Collection) 형식으로 묶여 관리되는 데이터베이스.
- SQL과 NoSQL의 차이
- SQL: Oracle, MySQL, PostgreSQL.
- NoSQL: MongoDB.
- 차이점 비교
SQLNoSQL
스키마가 존재함 | 스키마가 없음 |
수직적 확장 가능 | 수평적 확장 가능 |
ODM / ORM
- API 요청
- 브라우저에서 백엔드 서버로 데이터를 저장하거나 가져오기 위해 API 요청.
- ORM (Object-Relational Mapper)
- SQL 데이터베이스(테이블 형식)를 다른 프로그래밍 언어에서 쉽게 사용하도록 함.
- ODM (Object-Document Mapper)
- NoSQL 데이터베이스(문서와 컬렉션 형식)를 다른 프로그래밍 언어에서 쉽게 사용하도록 함.
요약
- 프론트엔드와 백엔드 구조: 사용자의 컴퓨터에서 시작하여 프론트엔드 서버와 백엔드 서버로 데이터를 주고받는 구조.
- 데이터베이스 종류: SQL과 NoSQL, 각자의 특성과 사용 예시.
- ORM/ODM: 데이터베이스 접근을 더 편리하게 하기 위한 도구, 각각의 장단점을 이해하고 사용하는 방법.
'nest.js' 카테고리의 다른 글
node.js(상속, 오버라이딩, super())(2024.05.20) (0) | 2024.05.20 |
---|---|
스크랩핑, 크롤링, 브라우저api(2024.05.12) (0) | 2024.05.14 |
동기(sync),비동기(async), 변수,함수 중복선언(2024.05.12) (0) | 2024.05.12 |
GraphQL, apollo 서버 (2024.5.11) (1) | 2024.05.12 |
cors(2022.05.11) (0) | 2024.05.11 |