This month I Learned - 22년 2월
(내용 정리에 생각을 덧붙일 경우 🤔
이모지를 첨부합니다.)
Development #
쿠버네티스가 대세가 된 이유 3가지 - 노마드코더
- 컨테이너들의 모니터링. 장애가 생기면 자동으로 재시작
- 오토스케일링
- 무중단 배포
- 서버의 관리 및 프로비저닝에 대한 책임이 없기 때문에 (일종의 클라우드에 아웃소싱을 주는 형태) 코드 또는 비즈니스 로직 작성에 중점을 둘 수 있다.
- 베어메탈 → 가상머신 → 컨테이너 → 서버리스
- 뒤로 갈수록 인프라에 투자할 시간이 줄고, 비즈니스 로직에 집중할 수 있음
FaunaDB Basics - The Database of your Dreams
- sql의 안정성과 nosql의 유연함, 생산성을 둘다 잡은 db
- 완전히 서버리스이므로 프로비저닝할 필요 없고 사용한만큼만 비용을 지불하면 된다.
- express 사용 예시
- serverless framework cloud 출시
- 예제 투두앱 설치해서 사용해봤는데 느리다.
제어 역전을 사용하여 분리된 React 구성 요소 빌드
- 컴포넌트 내부에 비즈니스로직을 담지 말고 외부에서 생성 후 props 로 컨테이너 컴포넌트에 주입하기
- 올바른 공급자를 반환하는 팩토리 메서드를 만드는 것도 효율적임
- 예시 - CheckoutComponent에서 Stripe와 Paypal 두가지 종류의 결제흐름을 제공하는 경우 공통된 컴포넌트에 props만 다르게 주입해서 재사용
- 커스텀 훅에서 컴포넌트도 훅 내부로 캡슐화
- 예를들어 modal같은 경우 useModal에서 모달 컴포넌트도 리턴하는 방식
- SSG로 컴파일 단계에서 미리 그릴 수 있는 부분을 최대한 그려서 사용자에게 도달하는 최초 index.html 파일이 비어있지 않도록 하자
- 원하는 클라우드 서비스에 관리형 데이터베이스를 공급해주는 서비스
- DO의 관리형 데이터베이스보다 저렴하고 linode에 설치할 수 있어서 도쿄리전 사용이 가능해서 좋은듯 (DO는 아시아에 싱가폴 리전 뿐임)