일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- js pattern
- 이미지 갤러리 최적화
- const
- 자바스크립트 패턴
- 자바스크립트 딥다이브
- 진행기록
- 새 코드 받아오기
- 학습내용정리
- DOM
- 모던 자바스크립트 Deep Dive
- 제너레이터와 async/await
- Babel과 Webpack
- mixin pattern
- 자바스크립트
- pr review
- 스코프
- js pattern
- 프론트엔드 성능 최적화 가이드
- peerdependencies
- 이벤트
- 블로그 서비스 최적화
- middleware pattern
- 프로그래머스
- 커리어
- package management
- 올림픽 통계 서비스 최적화
- 딥다이브
- version management
- 브라우저의 렌더링 과정
- unique identifiers
- Today
- Total
Dev Blog
14. Deployment & Cloud Computing 본문
Achievement Goals
- Cloud와 Deployment의 의미를 각 각 알고, 내 코드를 남에게 배포할 수 있다.
- 최소 AWS 서비스 블럭 에서 3개 이상의 서비스를 활용 하고, 설명 할 수 있다.(S3, EC2, RDS)
- ssh를 무엇을 위해 활용 하는지 알고, 다른 컴퓨터에 원격 접속 한다는 것의 의미를 설명할 수 있다.
- 보안을 위하여 github에 올리지 말아야 할 코드를 gitignore로 따로 분류 할 수 있다.
프리티어에서 요구하는 조건을 지키면 무료.
Cloud
Deployment
다른 컴퓨터에 코드를 올려서 구동시킬 수 있는 것.
AWS 서비스 블럭
- S3
- EC2
- RDS
ssh
원격 접속.
gitignore
Environments and Deployment
Problem
Why run our code on another computer? Deployment
Process to Deployment
staging: 일종의 준 배포
How can we guarantee our code will work in each of these environment?
설정해줘야할 환경 설정들.
주의할 점
Truth
1. SPA serve strategy
Amazon S3
Amazon Simple Storage Service
*static한 클라이언트 파일(html, css, js) 을 *build 하여 유저들이 (앱스토어에서 다운 받는 것처럼) 다운 받을 수 있도록 하는 서비스. 파일을 저장할 수 있는(파일 서브) 클라우드 서비스로 스태틱 파일 저장도 가능하다. 파일을 담을 수 있는 버킷이라 보면 된다.
(node + express 활용하여 static file serve할 수도 있다.)
*static file
static 파일이란 직접 값에 변화를 주지 않는 이상 변하지 않는 파일을 의미하는데 js, css, image, font 등과 같이 개발자가 사전에 미리 서버에 저장 해둔 파일들을 말합니다.정적 파일.
*build
2. Server Application deploy strategy
Amazon EC2
Amazon Elastic Compute Cloud
서버 앱을 돌릴 수 있는 다른 컴퓨터를 임대하기 위한 서비스. 서버 특화된 컴퓨터. 아마존에서 컴퓨터를 하나 만들어서 제공하는 것으로 여기에 서버 앱을 올려서 구동을 하게 된다.
안전하고 크기 조정이 가능한 컴퓨팅 용량을 클라우드에서 제공하는 웹 서비스입니다.
AWS 가 가진 컴퓨터 EC2 는 이름과 주소를 가지고 있다.
예) 이름: EC2 주소: 13.xx.xx.xx(개인의 localhost처럼)
여기에 유저가 원격으로 접속할 수 있다.
Amazon RDS
Amazon Relational Database Service
데이터베이스를 제공하는 클라우드 서비스(셋업이 되어있고, 환경 설정을 UI 에서 할 수 있다.). 데이터 베이스 특화된 가상의 컴퓨터. 데이터베이스 또한 로컬에 있는 MySQL 을 사용하지 않는다.
전체 프로세스
SPA serve strategy + Server Application deploy strategy
Deploy Sprint Architecture
Bare minimum
1. S3
리액트 빌드 파일을 서브할 수 있는 버킷 셋업
2. EC2
클라이언트 앱을 받아간 유저가 EC2 접속하여 구동되고 있는 Node server의 API 를 받아감.
3. RDS
API를 받아갈때 필요한 데이터는 RDS 라는 Database Instance 에서 *query 해 감.
*query
파일의 내용 등을 알기 위해 몇 개의 코드(code)나 키(key)를 기초로 질의하는 것을 의미합니다. 데이터 베이스에 존재하는 자료를 사용자가 원하는 조건을 통해 검색하고, 검색된 결과를 자유로이 조회할 수 있는 기능 등을 지원하는 것.
Advanced
HTTPS 웹사이트 만들기.
1. Certificate manager
SSL 인증서를 받을 수 있는 서비스
2. Cloud font, ELB
SSL 인증서를 클라이언트와 서버 어플리케이션에 각각 적용시키기 위해 사용하는 서비스
Cloud font: CDN을 활용해서 클라이언트 파일을 전 세계에 빠르게 제공할 수 있는 서비스.
3. Route 53
나만의 도메인을 갖기 위함.
Nightmare
Code Build
Code Deploy