runlot
リファレンス

用語集

ドキュメントやエラーメッセージで使われる runlot の主な用語を説明します。

世代 (generation, 세대)

データベースのバックアップ 1 つを指します。1 時間おきに作成され、epoch/seq の形式(例: 3/17)で識別します。無料プランは 24 世代(1 日分)、プロプランは 168 世代(7 日分)を保管します。詳しくはバックアップと復元をご覧ください。

epoch

プロジェクトのデータベースの系統番号です。データベースを復元したり、別のノードへ移したりすると 1 ずつ増えます。同じプロジェクトでも epoch が違えば別のデータ系統なので、以前の epoch からのリクエストは拒否します。

ワーカーから現在の値を取得できます。

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

Runlot-Epoch リクエストヘッダーでも確認できます。

スロット (slot, 슬롯)

ノードが 1 つのプロジェクトに割り当てる実行単位です。スロット 1 つにはプロセス、ポート、データディレクトリがそれぞれ 1 つずつ含まれます。プロジェクトをどのノードのどのスロットに置くかを決めることを 配置 と呼びます。

自動停止 (park, 자동 중지)

一定時間(既定は 5 分)リクエストがないと、ワーカープロセスを終了する機能です。データは保持され、新しいリクエストが届くと自動的に再開します。詳しくは自動停止と再開をご覧ください。

管理者が設定する停止状態(suspend)とは異なります。自動停止は新しいリクエストが来れば解除されますが、管理者が停止したプロジェクトは手動で解除する必要があります。

コールド (cold, 콜드)

ノード上でプロセスだけを止めるのとは異なり、データベースを外部ストレージへ移した状態です。ノードのディスク容量が不足すると、データベースを暗号化してオフサイトに保管します。再び有効化するには 6〜7 秒ほどかかります。詳しくは再有効化の流れをご覧ください。

wire

PostgreSQL プロトコルでデータベースに直接接続する方式です。アドレスは <プロジェクト>--<組織>.wire.runlot.app:5433 で、psql や PostgreSQL ドライバがこの接続を使います。ワーカーの env.db と同じデータベースに接続しますが、動作は異なります。wire 接続はセッションを維持し、env.db は呼び出しごとに新しいセッションを使います。

front (フロント, 앞단)

受信したリクエストの対象プロジェクトを決定し、アクセス制御を確認し、必要に応じてプロジェクトを再開する層です。Runlot-* ヘッダーもこの層で追加されます。HTTP と wire のどちらのリクエストもフロントを経由します。

org (組織, 조직)

プロジェクトを管理し、請求と権限を設定する単位です。デプロイのアドレスの 2 番目の名前が組織の slug です(例: my-app.me.runlot.appme)。チームとロールを参照してください。

デプロイとバージョン

runlot deploy を 1 回実行するたびに バージョン が 1 つ作成されます。デプロイ履歴は保持され、runlot rollback で以前のバージョンのいずれかを再び有効化できます。

アクセス制御・認証

  • アクセス制御 — デプロイそのものにアクセスできるユーザーを決めます(publicorgpassword)。
  • 認証 — アプリケーションに登録したユーザーを管理します(env.auth)。

この 2 つは異なる層で動作します。アクセス制御を参照してください。

このページの目次