콘텐츠로 이동

접속 대기열

접속 대기열(대기실)은 출시, 티켓 판매, 갑작스러운 트래픽 급증 때도 사이트가 버티게 해 줍니다. Corvus는 서비스가 감당할 수 있는 만큼만 방문자를 들여보내고, 나머지는 순서대로 기다리게 합니다. 기다리는 방문자에게는 자기 순번이 표시된 페이지가 8개 언어로 보이며, 페이지는 저절로 새로 고쳐집니다.

접속 대기열

설정하기

  1. 접속 대기열을 열고 접속 대기열 추가를 누릅니다.
  2. 정원(아래 참고)을 정하고 저장합니다.
  3. 프록시 호스트를 열고 접속 대기열에서 대기열을 고릅니다. 접속 대기열 적용 경로를 /로 하면 사이트 전체를, /event로 하면 그 부분만 보호합니다.

프록시 호스트 입력 화면의 접속 대기열

설정 항목

접속 대기열 입력 화면

설정 의미
최대 동시 입장자 수 동시에 안에 들어와 있을 수 있는 방문자 수
초당 입장 제한 1초에 새로 들여보내는 방문자 수(0이면 자리가 나는 즉시)
무활동 만료 이 시간 동안 요청이 없으면 방문자의 자리를 반납합니다
입장 차례 유효 시간 차례가 온 방문자는 이 시간 안에 들어와야 합니다
대기 이탈 판정 응답을 멈춘 대기 방문자를 대기열에서 뺍니다
캐시 DB 장애 시 모두 통과(fail-open, 가용성 우선) 또는 접속 차단(fail-closed, 정원 보호)
최대 대기 인원 이를 넘으면 새 방문자에게 나중에 다시 오라고 안내합니다(0이면 무제한)
IP당 대기열 진입 IP 하나가 1분에 새로 만들 수 있는 대기열 진입 수
입장권을 접속 네트워크에 묶기 같은 네트워크에서만 입장권이 통하므로 다른 사람과 공유할 수 없습니다. 네트워크를 바꾼 방문자는 다시 줄을 섭니다

정원 정하기

부하 테스트에서 서비스가 무리 없이 처리한 동시 사용자 수로 시작하고, 이벤트 중에는 대시보드의 입장과 대기 인원을 지켜보세요.

이벤트 중에는

  • 대시보드와 접속 대기열 페이지에서 입장·대기 인원을 실시간으로 볼 수 있습니다.
  • 긴급 해제는 모든 방문자를 바로 통과시킵니다. 예를 들어 급증이 끝났을 때 씁니다. 다시 켜기를 누르면 대기열이 다시 동작합니다.
  • 대기 인원이 늘어나면 알림으로 알려 줄 수 있습니다.

API와 앱

보호 경로 아래의 페이지, 이미지, API 호출은 모두 입장권이 필요합니다. 브라우저는 대기 페이지에서 기다리는 동안 입장권(쿠키)을 자동으로 받습니다. fetch/XHR 호출이나 앱처럼 대기 페이지를 보여 줄 수 없는 요청은 기다리는 동안 Retry-After 헤더와 작은 JSON 본문이 담긴 429 Too Many Requests를 받습니다. 이 응답은 서버 오류로 집계되지 않습니다.

다른 사이트의 클라이언트

입장권 쿠키는 SameSite=Lax입니다. 다른 사이트의 클라이언트(예: app.example.org의 웹 앱이 api.example.com을 호출)는 이 쿠키를 보내지 않으므로 계속 대기 상태에 머뭅니다. 사람이 브라우저로 여는 경로(예: 웹 쇼핑몰의 /)만 보호하거나, API는 대기열이 없는 호스트에 두세요.