S3
: 높은 데이터 내구성 및 보안을 제공하는 웹 기반 객체 스토리지 서비스
S3의 데이터 내구성
- 3개의 가용영역(AZ)에 데이터를 저장(Standard)
- 99.999999999% 내구성
S3의 보안
- S3 버킷은 Private 형태로 생성 됨 -별도 설정을 통해 Public으로 운영 가능
- 버킷 별로 정책 구성하여 권한 범위를 설정
사용 사례
▪ 정적 웹 사이트 호스팅
▪ 정적 리소스 서빙
▪ 파일 서버
▪ 데이터 백업 서버
▪ 민감 데이터 저장용 서버
실습
버킷 생성 후 정책 편집 → 퍼블릭 액세스 가능
정적 웹 사이트 호스팅
버킷 - 속성 - 정적 웹 사이트 호스팅 편집
index.html 파일 업로드 후 확인
url 확인
버킷 - 객체 - url 복사
버킷 - 속성 - 정적 웹 사이트 호스팅에서 url 확인
S3 API 사용해 파일 Push 테스트 - Postman
Put요청
- https://edu04-bucket.s3.amazonaws.com/[업로드할 파일명.확장자]
Authorization - Type - AWS Signature 선택
- AccessKey, SecretKey, AWS Region, Service Name 입력
Body - binary - 이미지파일 첨부 후 Send로 요청보내기
CloudFront
: 데이터 캐싱을 통해 사용자에게 데이터를 빠른속도로 전달해주는 CDN 서비스
적용 대상: 기간이 정해진 이벤트 페이지(데이터가 변하지 않아서)
*실시간 서비스 적합 X
*비용 높은 순 : ec2 > s3 > CloudFront
장점
- 글로벌 서비스 시에도 빠른 지연 속도.
- 데이터 전송을 노드 서버에서 수행하기 때문에 원본 서버에 부하가 감소.
- EC2 서버에서 발생하는 트래픽 비용보다 더 저렴
- Anti-DDoS 기능 제공
동작 원리
- 사용자로부터 데이터 요청
- 사용자 근처의 엣지 로케이션에 데이터 여부 확인
- 데이터가 없을 시(cache miss) 엣지 로케이션에서 오리진 서버로 데이터 수신(캐싱)
- 캐싱된 데이터가 없어서, 원본 서버로 요청
- 데이터가 존재할 시(cache hit) 해당 캐싱된 데이터 사용자로 전송
실습
수정된 데이터라도 캐시된 데이터만 보여줄 수 있음.
변경이 없는 데이터를 캐시 적용.
cloudfront 생성
원본: s3
*CachingOptimized: TTL 설정(캐싱된 데이터를 얼마나 유지할 것인지, 기본 24시간)
캐싱된 파일의 헤더 값 / 요청 시간 확인
개발자 도구 - Network - Hearder - X-cache 에서 값 확인
Cloudfront가 적용된 이미지 파일
아직 캐시된 파일이 적용되기 전(새로고침 전)
X-Cache : Miss
새로고침 후(캐시 파일 적용됨)
X-Cache : Hit
70.2KB jpeg 파일이 캐싱 적용되기 전 시간
: 206.20ms
캐싱 적용 후 → 지연시간 줄어듬
: 113.80ms
'교육' 카테고리의 다른 글
[Ncloud] Onpremise - Ncloud IPSecVPN 연동 (0) | 2024.01.17 |
---|---|
[Ncloud] IPsec VPN (Ncloud-Oracle cloud(OCI)) (0) | 2024.01.15 |
[AWS] Auto Scaling 실습 (0) | 2024.01.08 |
[NCP_실습] NKS (0) | 2023.12.12 |
[NCP] 소규모 아키텍처 설계 (1) | 2023.12.06 |