어제 배운 것은 프론트 서버리스, 오늘은 백엔드 서버리스!
도커,쿠버네티스를 쓰는 이유는 EC2로만 백엔드 아키텍처를 만들기엔 한계가 있다
1. EC2 직접 관리(내 컴퓨터를 관리하는 것과 비슷) -> 인스턴스 크기 선택, OS 업데이트, 디스크 용량 조절 등...
(EC2 갯수가 늘어나면 더 관리 힘듦)
2. 확장의 유연성 -> 운영 서비스에 트래픽이 몰리면 EC2 추가 -> load balancer에 붙이는데 시간이 오래 걸림
3. 과금 문제 -> aws 사용하면 인프라 관리 효율적이지만 과금이 많이 됨..(서비스 운영 시 유형 조절 어려움)
유연한 인프라와 아키텍처 개선을 위해 aws에서 서버리스 제공!
서버리스 : 클라우드를 사용하여 서버를 빌려쓰는 형태. 클라우드가 서버를 관리까지 해주는 형태로 더욱더 발전
우리가 관리해야 할 서버가 없고, 우리가 원하는 기능, 설정값들만 맞춰주면 알아서 정적 웹 사이트 기능을 관리해주는 것을 서버리스
이점 :
1.AWS S3를 사용해서 정적 웹 사이트 호스팅 기능 -> 관리 따로 안해도 됨
(원래 HTML, Javascript, CSS 파일로 웹사이트를 만들기 위해서는, 별도로 해당 파일들이 배포될 서버가 필요하고, Apache, Nginx와 같은 웹서버 제품 설치)
프론트 서버리스는 aws s3, 백엔드 서버리스는 aws Lambda가 제공!
Lambda
S3가 별도의 서버, 관리 없이도 프론트 페이지를 운영할 수 있는 것처럼,
백엔드도 인프라를 신경쓰지 않고 운영할 수 있는 서비스(S3과 비슷)
기존의 개발・배포 방식은 프레임워크에 의존하여 작업을 하고, 모든 기능을 포함하고 있는 전체를 배포하는 과정Lambda는 기본적으로 함수 단위로 배포!
이점 :
1.비용 절감(필요할때만 함수 호출, 비용 부과)
2.인프라 관리 부담 효율 - 관리 안해도됨
단점 :
1.리소스 제한있음
2.ColdStart = 오랜만에 실행 -> 딜레이 발생
3.동시성 제약 = 동시 처리 요청수 리전별 제한
Lambda 직접 만들어보고 설정해봄!
CloudWatch : 에러,로깅, 등등 런타임 활동 집계
API Gateway - Lambda 사용하여 API 만들기 위해 꼭 필요
Lambda 함수 만으로는 API를 만들 수 없습니다. API에서 보통 볼 수 있는 URL이 없기 때문
API Gateway는 HTTP 통신을 할 수 있게 HTTP URL, METHOD(GET, POST..) 를 만들어주어 API 엔드 포인트 역할
Lambda 와 API Gateway를 연동하면 외부에서 접근 할 수 있는 API를 만들 수 있음
RDS
AWS 클라우드에서 관계형 데이터베이스를 더 쉽게 설치, 운영 및 확장할 수 있는 웹 서비스
데이터베이스 만들고, 보안에서 모든 포트를 허용해줌..
RDS 스키마와 테이블 생성
'Today I Learned' 카테고리의 다른 글
211103TIL_스프링 1 (0) | 2021.11.03 |
---|---|
211029TIL_서버리스(3)-백엔드2 (0) | 2021.11.03 |
211028TIL_서버리스 프론트엔드(1)/SQL-서브쿼리/자바 환경 설치 (0) | 2021.10.28 |
211026TIL_SQL 3주차 (0) | 2021.10.27 |
211026TIL_트리,힙 / SQL (0) | 2021.10.26 |