항해99-3주차 기록(주특기 입문-React)
#React
- Dom??
텍스트 파일의 웹 문서를 브라우저에 렌더링하기 위해서는 브라우저가 이해할 수 있는 구조로 메모리에 올려야 함.
이를 가능하게 하는 것이 DOM. 웹페이지를 이루는 요소들을 자바스크립트가 이용할 수 있게 브라우저 내에서
트리구조로 만든 객체 모델. (html 등의 문서와 J.S의 연결)
- VirtualDOM??
모든 컴포넌트를 조작하는 것에 있어서 가상돔이 없이 실제돔을 사용한다면, 매번 접근 메서드를 하나하나 찾아야하고,
그 변화에 따라 레이아웃이 변화하고, 웹페이지를 다시 렌더링해서 보여줘야하는 문제가 생긴다. 만약 필요한 작업이
하나뿐이라면 크게 문제가 없을 수 있지만, 여러가지 동작을 하면서 이는 메모리 누수와 속도의 문제가 생길 수 있다.
실제 DOM에 직접 접근해 조작하는 대신, 추상화 시킨 자바스크립트 객체를 이용해서 사용하는 것.
- 서버리스란?
마치 서버가 없는것처럼 (서버를 관리할 필요 없이) 애플리케이션을 실행할 수 있는 환경.
클라우드 제공업체가 서버인프라에 대한 유지 관리, 스케일링 등의 일상적인 작업을 처리하고, 개발자는 배포를 위해 코드를 컨테이너에 패키징하여 사용하면 된다. 서버리스 애플리케이션은 배포 후에 필요에 따라 자동으로 스케일 업 되거나 다운된다.
서비스가 항상 구동되어 있는 상태가 아니라, 요청이 있을때만 실행 되다가 더 필요하지 않은 시점에 종료된다는 점 때문에, 요건에 맞춰서 구동된 시간과 처리된 데이터만큼만 비용을 지급할 수 있다. 클라우드 제공업체가 클라우드 인프라와 애플리케이션의 스케일링을 모두 관리한다는 점에서 클라우드 컴퓨팅 모델과 차이를 보인다.
장점
-항상 자체 서버를 실행하고 관리하는 대신 필요한 만큼 클라우드 기반 컴퓨팅 시간에 대해 비용을 지불하기 때문에 운용비용이 낮다.
-서버 관리 등과 같은 일상 업무의 부담을 줄여, 개발자가 애플리케이션에 더 많은 시간을 할애할 수 있게한다.
단점
-클라우드 제공업체의 제한으로 인한, 사용자 시스템의 유연성과 커스터마이징 수준에 영향을 준다.
-제공업체를 변경한다면 새로운 사양에 맞추기 위해 시스템을 업그레이드하는 비용이 발생할 수 있다.