근접성 서비스는 음식점, 호텔, 극장 등 현재 위치에서 가까운 시설을 찾는데 이용되는 서비스임.

요구사항 및 설계 범위

기능 요구사항

[1단계] 시스템 사용량 추정

가입한 사용자 : 5,000만명 가정

한 사용자가 하루에 서비스를 이용하는 평균 횟수 10회 이용한다고 가정

DAU가 10%라고 가정

일 평균 총 사용량 = 5000만번 이용

  1. 평균 QPS : ****약 500 (대략 하루를 10만초 기준으로 잡고 계산)
  2. 시스템에서 예상되는 지연시간 :
    1. 읽기 요청 : 초당 500, 400ms 이내
    2. 상세 정보 검색 : 전체 읽기 대비 1/5 로 정도로 생각했을때, 초당 100 요청, 400ms
    3. 쓰기 요청 : 초당 0.5, 2000ms
  3. 읽기/쓰기 비율
    1. 1000 : 1 정도로 가정
  4. 트래픽 추정치
    1. 전체 트래픽의 60%가 피크 시간대(약 4시간, 11시30분 ~ 1시 30분, 5시~7시) 동안에 발생한다고 가정
      1. 읽기 기준 피크 시간대 총 요청 수 = 3000만, 4시간 = 14,400 초
      2. 피크 시간대 평균 ****QPS = 약 2,083
    2. 쓰기
      1. 쓰기는 읽기에 비해 1/1000 수준으로 평균 QPS 계산 했을 때 약 0.5 QPS 예상
  5. 스토리지 추정치
    1. 스토리지는 MYSQL 사용
    2. 사업장 데이터 하나에 약 2,500바이트
    3. 사업장 수는 가입한 사용자의 1/10인 500만건 = 약 12.5GB ~ 13GB
      1. https://eiec.kdi.re.kr/policy/materialView.do?num=248141&pg=&pp=&topic=L
필드명 데이터 타입 크기 (바이트)
사업장 아이디 BIGINT 8
주소 VARCHAR(255) 1020
위도 DECIMAL(9,6) 5
경도 DECIMAL(9,6) 5
나라 VARCHAR(50) 200
사업장 유형 정보 VARCHAR(100) 400
사업장 이름 VARCHAR(100) 400
사업장 설명 VARCHAR(100) 400
영업 시작시간 TIME 3
영업 종료시간 TIME 3
합계 2,444
  1. 메모리 추정치
    1. 캐시되는 데이터 유형