사용량 및 청구
Kisenon이 측정하는 것, 무료 허용량, 그리고 콘솔이 이를 보여주는 방식.
Kisenon은 실제 사용량을 측정하고 이를 조직별로 집계합니다. 오늘날 콘솔은 사용량을 보여줄 뿐, 아직 그에 대해 과금하지는 않습니다 — 아래 알파 상태를 참조하세요.
측정 대상
컨트롤 플레인은 프로젝트별로 세 가지 차원을 샘플링하고 이를 조직별로 집계합니다:
| 차원 | 단위 | 측정 방식 |
|---|---|---|
| 컴퓨트 | CU-시간 | 각 엔드포인트의 서버 측 런타임(Postgres now())에서 매분 재계산되며, 시간 단위로 버킷화되고 컴퓨트 크기로 가중됩니다. |
| 스토리지 | GB-월 | 스토리지 계층의 프로젝트별 크기에서 5분마다 폴링됩니다. |
| 브랜치 | 브랜치-월 | 프로젝트별로 매일 02:00 UTC에 한 번 샘플링됩니다. |
움직이는 것은 컴퓨트입니다. 유휴 시 일시 중지되는 엔드포인트는 멈추는 순간 CU-시간 누적을 멈추므로, 하루 대부분을 잠들어 있는 프로젝트는 쉴 새 없이 돌아가는 프로젝트의 일부분만큼만 비용이 듭니다. 스토리지와 브랜치 수는 샘플링 창 안에서 안정적이므로 더 성긴 주기로도 충분합니다.
샘플은 현재 청구 주기에 대한 컴퓨트, 스토리지, 브랜치 사용량을 조직별 단일 뷰로 집계합니다 — 청구 페이지가 렌더링하는 숫자입니다.
무료 등급
알파 무료 등급은 조직별 프로젝트 수 상한으로 적용됩니다. 상한이
활성화되면, 등록된 결제 수단이 없는 조직은 고정된 수의 프로젝트로
제한됩니다. 한계에 도달하면 또 다른 프로젝트를 생성할 때
free_allowance_exhausted(HTTP 403)가 반환됩니다. 등록된 결제 수단이 있는
조직은 상한이 없습니다. 정확한 상한은 하드코딩된 숫자가 아니라 배포
설정이므로, 알파가 발전함에 따라 조정할 수 있습니다.
한 주기의 측정 사용량이 올라감에 따라, 콘솔은 세 가지 임계값에서 본문 위에
점차 강해지는 배너를 표시합니다 — 컨트롤 플레인이 주기별 알림 로그에
기록하는 것과 동일한 80 / 95 / 100 퍼센트입니다:
- 80% — 노란색 알림: "이번 기간에 무료 등급의 80% 이상을 사용했습니다."
- 95% — 서비스가 중단되기 전에 결제 수단을 추가하라는 황색 경고.
- 100% — 빨간색 소진 상태: 결제 수단이 추가될 때까지 컴퓨트가 일시 중지될 수 있습니다.
각 배너는 세션 동안 닫을 수 있으며 결제 수단 추가로 연결됩니다.
조직 청구 페이지
모든 조직에는 /orgs/{id}/billing에 청구 페이지가 있으며, 조직 내비게이션에서
접근할 수 있습니다. 사용량 데이터가 있으면 차원별로 사용량 / 허용량
바(80% 미만은 녹색, 80–95%는 황색, 95% 이상은 빨간색)와 선택적인 기간 말
예상 마커, 예상 인보이스 항목, 그리고 현재 플랜 및 결제 수단을
렌더링합니다.
알파 상태
청구는 아직 가동되지 않았습니다. 추가할 결제 수단도, 지불할 인보이스도, 결제 플로우도 없습니다:
- 위의 측정 샘플은 수집되어 저장되고 콘솔이 이를 표시하지만, 컨트롤
플레인의 청구 엔드포인트(
/v1/billing/customer)는 알파에서 연결되어 있지 않습니다. - 그 엔드포인트가 오늘날 아무것도 반환하지 않기 때문에, 사용량 배너는 항상 아무것도 없는 것(0% 사용)으로 렌더링되고 청구 페이지는 예외를 던지는 대신 "곧 제공 예정" 자리 표시자로 격하됩니다.
- 결제 처리는 Stripe 테스트 모드 골격뿐입니다. Stripe 고객 필드, 청구 NOTIFY 트리거, 그리고 소유자/청구 포털 경로는 모두 예약된 스텁입니다 — 실제 카드도, 실제 인보이스도 없습니다.
청구가 가동되면 이 표면들은 재작성 없이 켜집니다: 배너와 청구 페이지는 이미 동일한 엔드포인트에서 읽으므로, 엔드포인트가 데이터를 반환하는 순간 실제 숫자를 보여주기 시작합니다.