TIL:SPA / DB

hihyeon_cho·2022년 11월 16일
1

TIL

목록 보기
13/101

SPA

MPA / SPA

MPA(Multi Page Application)

  • 여러 장의 페이지로 되어있는 웹 애플리케이션
  • 데이터를 변경할 때, 새로고침이 이루어지며 전체 페이지를 다시 다운받게 된다.
  • 서버랜더링으로 인한 부하가 높게 발생한다.
  • 최초 로딩시, html파일을 먼저 받기 때문에, 초기 로딩속도가 느리지 않다.
  • 화면구성이 서버에서 이루어진다. (SSR:Server Side Rendering)

SPA(Single Page Application)

  • 한 장의 페이지로 되어있는 웹 애플리케이션
  • 데이터를 변경해도 새로고침 되지 않고, 해당 부분만 변경된다.(stack만 된다.)
  • 서버랜더링으로 인한 부하가 적다.
  • 최초 로딩 시, 모든 리소스를 한꺼번에 한 번만 받는 구조이기 때문에, 로딩속도가 느리다.
  • 화면구성이 클라이언트측에서 일어난다. ( CSR : Client Side Rendering )

Hashed(#) Routing

: url 주소 뒤에 #을 붙여서 표현.

  • 브라우저는 url에 #(해시)가 있으면 #포함 그 이후부터 페이지로 받아들이지 않는다.
  • "http://test.com/#sub"로 랜딩 혹은 새로고침이 되어도 브라우저는 index.html이라는 하나의 파일만을 로드한다.
  • "http://test.com/sub"로 랜딩 혹은 새로고침이 되면 브라우저는 호스팅서버에 "/sub"에 해당하는 별도의 페이지를 요청한다.


DataBase

dbms

: Database, 즉 DB란, 좁은 의미로 말하자면 데이터의 모음, 데이터의 나열이다.
이를 제어할 수 있는 프로그램이 dbms이다. dbms의 종류는 mysql,oracle

rdbms

: 엑셀처럼 표 형태로 열과 행으로 이루어져있는 데이터베이스이다. 직관적이며, 관계파악도 정확히 할 수 있다는 특징을 가지고 있다. 그래서 보통 정규화를 rdbms로 한다.
rdbms의 단점은 성능을 향상시키려면 비싸다는 점이다.

성능향상

: 성능향상은 scale up과 scale out, 2가지 방법이 있다.

scale up

: 서버의 성능을 늘려 처리능력을 향상시키는 방법이다.
하드웨어의 발전에는 한계가 있다는 것이 단점이다.
ex ) rdbms, SQL

scale out

: 서버의 대수를 늘려서 처리능력을 향상시키는 방법이다.
ex) NoSQL

SQL

:SQL은 구조적 질의언어의 줄임말이다.열과행으로 저장되어 데이터구조 파악이 쉽고 사전에 정의한 관계로 데이터를 구성하는 데이터베이스로, 대부분의 관계형 데이터베이스에서 sql문법을 지원하여 관계형 데이터베이스를 sql이라고도 부른다. 수직확장 데이터로, column에 대한 정의가 필요하지만, 정확성이 높다는 장점이 있따.
마트에서 물품목록 적기, 회사나 학교에서 등 정형화된 데이터에 사용한다.

NoSQL(Not only SQL)

: 비관계형 데이터베이스이다. rdbms를 제외한 나머지를 비관계형(nosql)데이터베이스라고 한다. 사전에 구조를 정의하는 데이터베이스와는 다르게 유연하게 데이터를 쓰고, 읽을 수 있다. 수평확장 데이터로 SQL보다 유연하다는 특징이 있지만, 정확성이 SQL보다 떨어진다는 단점이 있다.
최근에는 예측할 수 없는 데이터들이 많기 때문에 no sql(정확성이 별로 중요하지 않다면)을 많이 사용한다.
aws dynamodb, mongodb등이 있다.

NoSQL의 데이터유형

  • key-value 타입
    ex ) redis, aws dynamodb
  • document
    : json과 같이 문서처럼 저장하는 데이터베이스이다.
    ex ) mongodb, firebase

SPA와 DB에 대해 공부했는데, 처음이라 그런지 머리에 넣는게 쉽지 않았지만, 그림그려서 공부해보니 이해가 잘 되었다. 코딩은 손으로 해야하는 건가..? 요즘은 컴퓨터도 많이 쓰지만 종이와 펜을 더 쓰는 것 같다. 컨디션때문에 진도를 많이 못빼서 아쉬운 하루지만 내일 푹자고 일어나서 최상의 컨디션으로 다시 화이팅해야겠다! 내일모레 프로젝트 너무 기대된다! 잘할 수 있겠지? 🤔

profile
코딩은 짜릿해 늘 새로워 ✨

1개의 댓글

comment-user-thumbnail
2022년 11월 17일

손코딩 진짜 최고죠! (저는 잘 못함...)
플젝 얼마 안남았네요!!! 오늘도 화이팅하시고 컨디션관리 고고!

답글 달기