요구사항 구체화
기능
URL 단축
: 주어진 긴 URL을 훨씬 짧게 줄인다.
URL 리디렉션
: 축약된 URL로 HTTP 요청이 오면 원래 URL로 안내
- 높은 가용성, 규모 확장성, 장애 감내
- 사용 가능한 문자 : [0-9a-zA-Z] 총 62개
개략적 추정
- 쓰기 연산 : 매일 1억개의 단축 URL 생성
- 초당 쓰기 연산 : 1160
- 읽기 연산 : 읽기와 쓰기 비율이 10:1이라고 가정하면 읽기 연산은 초당 11,600회 발생
- 레코드 보관 : 10년간 운영한다고 가정하면 1억 * 365 * 10 = 3650억개의 레코드 보관 필요. 긴 URL의 평균 길이가 100이라면 총 저장 용량은 36.5TB가 필요하다.
개략적 설계