[글로벌 사진 사이트 구축]
1. 개발 요구 사항
- 대용량 이미지 파일 저장
- 전 세계 어디서나 사이트 및 이미지를 보여주는 속도가 빠름
- 원본 사진의 크기를 웹사이트에 맞게 조절
- 사용자 증가량 대비
2. AWS 리소스와 서비스 구조 설계
- S3 : 대용량 이미지 저장
- CloudFront : 전 세계에 빠르게 사이트와 이미지 배포
- EC2, SQS : 원본 사진 크기 조절 처리 및 서버간 통신
- EC2, RDS : 웹 서버, 데이터베이스
- ELB, AutoScaling : 사용자 증가 대비
- Rout53 : 도메인 처리
[자동 확장 가능한 콘서트 티켓 예매 사이트 구축]
1. 개발 요구 사항
- 짧은 시간에 사람이 많이 몰려도 서비스가 중단되지 않아야 함
- 결제가 정확히 이루어져야 함
- 실시간으로 좌석 예매 상황 표시
2. AWS 리소스와 서비스 설계 구조
- ELB, AutoScaling : 사용자 증가 대비
- RDS : 좌석 결제가 정확하게 처리
~ DynamoDB는 실제 처리량이 설정한 처리량을 넘기면 읽기/쓰기 실패
~ RDS는 인스턴스 클랙스, IOPS 속도를 높일 수 있음(수직확장)
3. ElastiCache의 Radis : 실시간 좌석 예매 상황 표시
4. socket.io : 웹 브라우저에서 실시간으로 좌석 상태 갱신
5. CloudFront : HTML, JavaScript 파일을 배포하여 EC2 인스턴스 부하를 줄임
[자동 확장 가능한 모바일 게임 서버 구축]
* 모바일 게임 패턴
- 퍼즐 또는 런(Run) 등 게임 방식이 간단하고 소셜 플랫폼을 활용한 순위형 게임
- 카드나 캐릭터를 수집한 뒤 전투를 하는 게임
- 자신의 요새나 성을 쌓고 서로 공격하는 게임
- 자신의 소유물을 경영하는 게임
- 스포츠 기반 수집 게임
1. 개발 요구 사항
- 실시간으로 순위를 산출
- 부분 유료화 아이템의 결제에 장애가 발생하면 안됨
- 마케팅을 위한 로그를 저장해야 함
- 사용자가 늘어남을 대비
2. AWS 리소스와 서비스 설계 구조
- RDS : 유저 정보, 게임 데이터, 결제 정보 저장
- ElasticCache : 전체 순위, 친구 순위 산출
- DynamoDB : 결제 로그 및 게임 로그 등 비정형 데이터 저장
- EC2, ELB, Auto Scaling : 게임서버, 분산부하 담당
- S3, CloudFront : 게임의 리소스에 대한 부분 업데이트 저장소