runlot
참조

용어

문서와 오류 메시지에서 사용하는 runlot의 주요 용어를 설명합니다.

세대 (generation)

데이터베이스의 백업본 하나를 뜻합니다. 한 시간 간격으로 생성하며 epoch/seq 형식(예: 3/17)으로 식별합니다. 무료 요금제는 24세대(하루), 프로 요금제는 168세대(7일)를 보관합니다. 자세한 내용은 백업과 복원에서 확인하세요.

epoch

프로젝트 데이터베이스의 세대 번호입니다. 데이터베이스를 복원하거나 다른 노드로 옮기면 1씩 증가합니다. 같은 프로젝트라도 epoch이 다르면 다른 데이터 계보이므로 이전 epoch의 요청은 거절합니다.

워커에서 현재 값을 조회할 수 있습니다.

const { project, epoch } = await env.db.identity();

Runlot-Epoch 요청 헤더에서도 확인할 수 있습니다.

슬롯 (slot)

노드에서 프로젝트 하나에 할당하는 실행 단위입니다. 슬롯 하나에는 프로세스, 포트, 데이터 디렉토리가 각각 하나씩 포함됩니다. 프로젝트를 어느 노드의 어느 슬롯에 둘지 정하는 것을 배치라고 합니다.

자동 중지 (park)

일정 시간(기본 5분) 요청이 없으면 워커 프로세스를 종료하는 기능입니다. 데이터는 유지되며 새 요청이 오면 자동으로 다시 시작합니다. 자동 중지와 재시작에서 자세히 확인하세요.

관리자가 설정하는 정지 상태(suspend)와는 다릅니다. 자동 중지는 새 요청이 오면 해제되지만, 관리자가 정지한 프로젝트는 직접 해제해야 합니다.

콜드 (cold)

노드에서 프로세스만 중지하는 것과 달리 데이터베이스를 외부 저장소로 옮긴 상태입니다. 노드의 디스크 공간이 부족하면 데이터베이스를 암호화해 오프사이트에 보관합니다. 다시 활성화하는 데 약 6~7초가 걸립니다. 재활성 과정에서 자세히 확인하세요.

wire

PostgreSQL 프로토콜로 데이터베이스에 직접 연결하는 방식입니다. 주소는 <프로젝트>--<조직>.wire.runlot.app:5433이며, psql과 PostgreSQL 드라이버가 이 연결을 사용합니다. 워커의 env.db와 같은 데이터베이스에 연결하지만 동작 방식은 다릅니다. wire 연결은 세션을 유지하고 env.db는 호출마다 새 세션을 사용합니다.

front (앞단)

수신 요청의 대상 프로젝트를 결정하고 접근 제어를 확인하며, 필요할 경우 프로젝트를 다시 시작하는 계층입니다. Runlot-* 헤더도 이 계층에서 추가합니다. HTTP와 wire 요청 모두 프런트를 거칩니다.

org (조직)

프로젝트를 관리하고 청구 및 권한을 설정하는 단위입니다. 배포 주소의 두 번째 이름은 조직 slug입니다(예: my-app.me.runlot.appme). 팀과 역할을 참고하세요.

배포와 버전

runlot deploy를 한 번 실행할 때마다 버전 하나를 생성합니다. 배포 이력은 유지되며, runlot rollback으로 이전 버전 중 하나를 다시 활성화할 수 있습니다.

접근 제어 · 인증

  • 접근 제어 — 배포 자체에 접근할 수 있는 사용자를 정합니다(public, org, password).
  • 인증 — 애플리케이션에 가입한 사용자를 관리합니다(env.auth).

두 기능은 서로 다른 계층에서 동작합니다. 접근 제어를 참고하세요.

이 페이지의 목차