AWS
AWS는 Amazon Web Service, 즉 아마존에서 제공하는 클라우드 서비스이다. 다양한 기능을 서비스로 제공한다. 현재 가장 유명하고 많이 쓰인다고 할 수 있다. 개인 기업 할거 없이 현업에서도 많이 사용하고 있기 때문에 웹 개발자라면 알아두는 것이 좋다. 필자도 개인 사이트 등록을 위해서 AWS 공부를 시작했다.
AWS 같은 클라우드 서비스는 직접 물리적 기기를 관리할 필요가 없고 사용량에 따른 유연한 비용과 서버의 스펙을 원격으로 조절할 수 있는 등의 편리한 점이 많다.
S3란?
S3(Simple Storage Service)는 클라우드 공간에 데이터(파일)를 저장하고 사용자에게 제공 해 주는 온라인 스토리지 웹 서비스이다.
(일반적인 기존의 환경으로 기준으로 얘기하자면 CDN서버나 FTP로 파일을 업로드 / 다운 로드 할 수 있는 공간을 생각하면 된다.)
AWS 콘솔을 통해서 업 로드 / 다운 로드가 가능 하고 http를 통한 접근이 가능하기 때문에 브라우저를 통한 서비스가 가능하다. 일반적인 시스템과는 파일(또는 데이터) 다르게 key, value 조합인 객체 타입의 구조로 구성된다. key는 파일 혹은 데이터 이름 value 파일 혹은 데이터 그 자체를 말한다.
S3의 특징
1. 객체(Object)
S3 API Document를 보면 알 수 있듯이 S3는 객체(Object)라는 기본 단위로 조작된다.
앞서 말한것처럼 객체(Object)는 key, value의 조합
👉 기본적으로 객체의 Key가 데이터의 이름이고, Value가 데이터 파일
👉 객체 하나의 크기는 최소 1Byte부터 4TB
2. 버킷(bucket)
S3에서 생성할 수 있는 루트 디렉토리를 말한다.
장점
정적인 html이나 이미지 등을 제공 하는데 용이 하다.
대량 트래픽에 대응 하기 위한 시스템 구축이 필요 없다.
권한 및 캐싱 전략을 쉽게 추가 할 수 있다.
EC2란?
EC2(Elastic Compute Cloud)는 AWS에서 제공하는 가상 컴퓨터 머신이라고 생각하면 된다. 기존의 웹 서버를 구축하기 위해서 사용한다.
기존에는 웹 서비스를 제공하기 위해서 직접 물리적인 서버를 구축하거나 호스팅 업체에서 제공하는 서버의 서비스를 사용한다. 컴퓨터의 용량이나 트래픽을 시작부터 정해서 특정 공간을 임대하는 방식이나 보니 사용량이 몰릴때 유연하게 대처하기 어렵다.
AWS에서 EC2를 사용하게 되면 웹 서비스 제공자들은 실제 물리적 서버나 시스템에 대해서 구축하고 신경 쓸 필요가 없다. 트래픽이 몰리거나 컴퓨터 머신의 업그레이드가 필요하면 AWS 웹 콘솔에서 바로 기능을 올리거나 용량을 증가하는 등의 유연한 대처가 가능하다.
서비스 사용량이 줄어지면 다시 줄이면 되고 사용한 만큼 비용을 결재 하면 된다.
EC2라는 가상의 공간에 원하는 OS나 프로그램을 설치하고 서버를 구축할수 있다. 인스턴스라는 것은 EC2 내부 1대의 가상 컴퓨터를 말한다.
참고
'개발관련' 카테고리의 다른 글
tsconfig, jsconfig 절대 경로와 webpack alias 설정 관련 해결 방법 (0) | 2022.02.03 |
---|---|
개츠비 gatsby.js AWS S3에 업로드해서 정적 사이트 호스팅 하기 (0) | 2021.10.23 |
Gatsby 개츠비 에서 이미지 사용 시 최적화 관련 팁 gatsby-plugin-image 사용법 (0) | 2021.10.10 |
안드로이드 AlertDialog 바깥영역 클릭해서 취소 하기 setOnCancelListener (0) | 2021.06.10 |
Android Kotlin 안드로이드 코틀린 AlertDialog Dismiss 설정하기 ( Alert 콜백 처리) (0) | 2021.05.28 |