Contents

서비스 상담 사례

철도공사 예매 서비스

이슈
로그인 페이지와 예매 페이지에 부하가 집중적으로 발생
서비스 적용 계획
  • 로그인 페이지와 예매 페이지의 유입 인원을 넷퍼넬을 통하여 제한
  • 넷퍼넬 시작: 예매 버튼 / 넷퍼넬 완료: 예매 완료 또는 로그아웃
  • 완료 단계 전까지 거쳐 가는 모든 페이지에 넷퍼넬 AliveNotice 기능을 활성화
  • 중간 단계의 모든 페이지에 제한 시간(3분)을 주어 페이지에 머물러 있는 사용자를 빼는 부분을 추가
    추가하지 않을 경우, 머물러 있는 사용자로 인하여 무한정 대기에 빠질 수 있음
  • 각 중간 단계에 다이렉트 URL로 직접 접근하는 사용자들을 WAS의 Referer 체크를 통하여 차단
서비스 적용 방법
  1. 1. 서비스 시작 시간인 06:00 전까지 넷퍼넬 차단 기능으로 서비스 진입을 막고 시작 2초 전에 해제
  2. 2. 진입 허용수 1,000으로 서비스 시작
  3. 3. WAS와 DB의 상태를 체크하여 이상 없을 경우, 1분 간격으로 진입량을 500씩 증가시킴
    기준점을 WAS,DB의 CPU 사용율 50프로 이하로 유지
  4. 4. 목표치인 10,000 까지 계속 증가 시킴
  5. 5. 최대 대기자수 약 25만명 발생. 최대 요청량 약 4만tps 발생

서울대학교 수강신청 서비스

이슈
로그인과 수강 저장에서 부하가 집중적으로 발생
서비스 적용 계획
  • 로그인과 수강 저장이 부하가 가장 많이 발생하는 병목 구간이라고 하여 이 두 부분을 중점으로 적용
  • 서비스 시작 시간인 07:00 까지는 로그인은 가능하지만 수강 신청을 WAS 단에서 시간 체크로 못하게 막아 두고 시간이 되면 자동으로 신청이 받아지는 구조
서비스 적용 방법
  1. 1. 진입 허용수 450으로 시작
  2. 2. 서버 처리 시간이 3초 미만일 경우 조금씩(10) 증가시키며 서버 상태 및 처리 시간 확인
  3. 3. 580 이상으로 올렸을 때 처리 시간이 급 상승하는 패턴이 보였고 처리 시간이 3초 아래로 맞추기 위해 첫 진입 허용수였던 450으로 줄임
  4. 4. 대기인원은 5,000명이 발생. 최고 대기시간은 약 20초. 최대 요청량은 약 1,500tps 발생

나이키 우먼레이스 신청

이슈
이벤트 당일에 진입 폭주 예상
서비스 적용 계획
  • 서비스 오픈 일주일 전 적용 실시
  • 시스템 환경이 클라우드로 구성되어 있음
  • 이벤트 페이지는 개인 정보 입력으로 여러 단계로 진행되는 형태임
  • 다음 단계로 넘어가는 각각의 버튼에 적용하였으며 다음 단계 진입 시마다 이전 단계의 넷퍼넬을 완료 처리함
서비스 적용 방법
  1. 1. 서비스 시작 시간인 09:00 까지는 넷퍼넬 차단 기능으로 서비스 진입을 막고 09:00 시작과 동시에 해제함
  2. 2. 정확한 진입 허용수를 알 수 없기에 진입 허용수를 Dynamic 설정으로 최소값을 100으로 하였으며 최대값은 10,000으로 서비스를 진행함
  3. 3. 상태 기준 처리 시간을 기본 값인 2~5초로 설정하여 처리 시간에 따라 넷퍼넬 서버에서 자동으로 진입 허용수가 설정됨
  4. 4. 대기 인원은 3,000명 정도 발생하였으며 대기 시간은 약 20~40초가 발생

아산시청 통합 예약 시스템

이슈
매달 1일 영인산 휴양림 예약 서비스에 폭주가 발생하여 시스템 장애가 발생
서비스 적용 계획
  • 예약 시스템 서버가 Web+WAS 1대와 DB 1대의 구성이고, 오래된 서버로 상태가 좋지 않아 트래픽에 약간의 폭주가 발생해도 시스템에 장애가 발생하는 상태
  • 모든 구간이 문제가 발생하기에 통합 예약 진입부터 시작하여 휴양림 예약 전 구간에 적용함
  • 전 구간 적용시 액션 아이디 구분 없이 같은 한 줄로 서비스 진행
서비스 적용 방법
  1. 1. 서비스 시작 진입 허용수 15의 낮은 수로 시작
  2. 2. 서비스 시작 10분전부터 대기자가 발생함.
    서버의 상태를 파악하면서 진입 허용수를 조정함.
  3. 3. 대기 인원은 300~400명 정도 발생 대기 시간은 1분 정도 발생