항해99 | 3주차 회고
안녕하세요 TriplexLab 입니다.
이번주 회고 주제는 서버리스와, DOM 입니다.
📌서버리스(Serverless)란?
서버리스(Serverless)라는 단어만 보면 자칫 '서버리스 = 백엔드 리스' 라거나 '서버가 없다' 라고 생각할 수 있지만
단순히 미리 아래와같이 서버의 역할을 미리 설정해둔 서버를 서버리스라고 한다.
역할1. 데이터 관리
(db -> 요청에 따른 데이터 가공 -> 응답)
역할2. 헬스체크
( 미리 답이 정해진 일정한 규칙을 실행시켜 장애의 유무를 결정하고, 필요할 때는 장애 단위를 분리시키는 자기 진단 기능.)
역할3. 데이터 관리
(db -> 요청에 따른 데이터 가공 -> 응답)
📌DOM란?
보통 HTML=DOM이라고 많이 생각하는데, 완전히 같은 개념은 아니다.
간단하게 보자면 Browser를 목수, 우리가 계속해서 만들고 있는 HTML은 설계도 라고 봤을 때 이 설계도의 내용대로 실체를 만들어
낸 것(집)을 DOM이라고 한다.
📌리액트에서 사용하는 가상 돔(Virtual Dom)은 뭘까?
만약 저 설계대로 만든 집(DOM)에 Javascript로 지시가 들어와서 집에있는 책상(하나의 컴포넌트라고 생각하자) 하나를 옮겨야 된다면 어떻게 될까? 가상 돔 없이 이 책상을 옮긴다면 목수는 두 설계도를 비교하지도 않고 아예 설계도대로 처음부터 다시 집을 부쉈다가 다시 짓는 행동을 하게된다.(페이지 전체를 리렌더링한다.) 하지만 가상 돔(virtual Dom)을 이용하면 목수는 그 안에서 실제 집(DOM)에서 옮기기 전에 이전 설계도와 새로운 설계도를 겹쳐보고 달라진 부분만을 가져와 효율적으로 해당 '책상(컴포넌트)'을 옮기게 된다.
(해당 요소만 렌더링)