비용과 아키텍처 결정 · 데이터 전송 비용 · 실습
청구서의 1위를 계산으로 찾는다
목표
전송 요금이 무서운 이유는 액수가 아니라 **어디서 나왔는지 보이지 않는다는
것**입니다. 이 실습은 클라우드 계정 없이 아키텍처의 트래픽 경로를 표로 펼치고,
그 표를 읽는 계산기와 급증 감지기를 손으로 만듭니다.
단가표 (이 실습의 가정)
| 경로 | 단가 |
|---|---|
| 인터넷 인그레스 | GB 당 $0 |
| 인터넷 이그레스 | GB 당 $0.09 |
| 같은 AZ 안 | GB 당 $0 |
| AZ 간 | 양쪽에 $0.01 씩, 실질 GB 당 $0.02 |
| 리전 간 | GB 당 $0.02 |
| NAT 게이트웨이 | 처리량 GB 당 $0.045, 상주 시간당 $0.045 (월 730시간) |
| CDN 이그레스 | GB 당 $0.06 |
요율은 사업자와 리전마다 다릅니다. 여기서 익히는 것은 값이 아니라 **자릿수를
잡는 방법**입니다.
트래픽 경로 (월 전송량)
| 경로 | 종류 | 월 전송량 |
|---|---|---|
| 인터넷에서 웹 계층 | ingress | 3,000 GB |
| 웹 계층에서 인터넷 | egress | 26,000 GB |
| 앱(AZ-a)과 DB(AZ-b) | cross-az | 8,000 GB |
| 앱에서 오브젝트 스토리지 (NAT 경유) | nat | 5,000 GB |
| 로그에서 다른 리전 수집기 | cross-region | 1,200 GB |
| 웹과 캐시 (같은 AZ) | same-az | 20,000 GB |
이그레스 26,000 GB 중 18,000 GB 는 평균 20KB 짜리 API 응답이고, 나머지
8,000 GB 는 이미 압축된 이미지와 동영상입니다.
만드는 것
| 파일 | 내용 |
|---|---|
| /root/transfer/paths.csv | 경로별 전송량과 요금 |
| /root/transfer/02-top3.md | 요금 상위 셋과 합계 |
| /root/transfer/bill.py | 표를 읽는 계산기 |
| /root/transfer/04-gzip.md | 압축의 절감액 |
| /root/transfer/05-cdn.md | CDN 비교와 손익분기 적중률 |
| /root/transfer/daily.csv · spike.py | 전송량 급증 감지 |
| /root/transfer/07-notes.md | 정리 |
참고
3단계의 계산기와 6단계의 감지기는 채점기가 숨겨 둔 표로 시험합니다.
표를 갈아 끼워도 맞아야 설계 회의에서 쓸 수 있습니다.
단계 7개
- 경로를 표로 만든다
- 요금이 큰 순서로 세운다
- 표를 갈아 끼워도 맞는 계산기
- 압축의 값을 금액으로 적는다
- CDN 이 싸지는 지점을 구한다
- 청구서보다 먼저 아는 장치
- 세 가지를 정리한다