AM HORIZONT — BALD
⚓ idle harbor
Aktiviere eine Option und die microVM deiner App wird in einen Snapshot pausiert wenn der Verkehr stoppt. Während sie schläft, zahlst du nur für den Speicher der geparkten VM — keinen Cent Rechenleistung. Die nächste Anfrage weckt sie in unter einer Sekunde.
🧮 was es wirklich spart
Snapshot storage costs €0.10/GB-month — the same rate as a volume. A typical microVM snapshot is about the size of its RAM allocation.
Compute is billed per second while awake, snapshot storage per second while asleep. No rounding, no minimums.
🗺️ aktivieren
The portal has a one-click toggle on every service. The idle window is configurable from 1 minute to 24 hours — shorter for webhooks that should feel instant, longer for services where the first wake can afford a brief delay.
⚙️ was passiert, Schritt für Schritt
💡 gemacht für
Nebenprojekte & Demos
Dein Portfolio bekommt drei Besucher pro Woche. Immer-an sind 2 €/Monat; im Harbor kostet ein 512-MB-Snapshot etwa 0,05 €/Monat — dieselbe App, ein Bruchteil der Rechnung.
Webhooks & Integrationen
Ein Empfänger, der feuert, wenn Stripe, GitHub oder n8n anruft. 23 von 24 Stunden im Schlaf, wach sobald ein Payload ankommt — der Sender merkt die 300 ms nicht.
Staging- & Preview-Umgebungen
Zehn offene PRs heißt zehn Preview-Instanzen. Immer-an sind 20 €+/Monat für Umgebungen, die nach 17 Uhr niemand ansieht. Im Harbor schläft jede, wenn der Reviewer den Tab schließt.
Interne Tools
Das Admin-Dashboard, der Report-Generator, das Wiki, das sonntags niemand liest. Tools, die du Stunden pro Woche nutzt, sollten nicht Stunden pro Monat kosten.
Funktionsartige Dienste
Eine API, die auf Anfrage Bilder umwandelt oder PDFs rendert, verhält sich wie eine Funktion — ohne Umschreiben für eine FaaS-Runtime. Deploy denselben Container und lass Harbor auf fast null skalieren.
Bots & Assistenten
Chatbots und KI-Agenten, die auf Erwähnungen reagieren, schlafen zwischen Gesprächen. Wake-on-Request hält das Tempo; die Wallet behält ihre Münzen.
Persönliche Dev-Umgebungen
Deine Cloud-Devbox mit all deinen Tools. Aktiv beim Coden, schlafend sonst. Kein Zahlen mehr für untätige Rechenleistung zwischen Abendsession und Morgen-Standup.
Geplante Batch-Jobs
Ein Dienst, der um 03:00 Reports rechnet und den Rest des Tages idle ist. Park ihn zwischen Läufen; ein Cron-Wecksignal (oder ein simpler HTTP-Call) bringt ihn genau dorthin zurück, wo er aufhörte.
Worker & Prozessoren
Ein HTTP-getriggerter Worker, der die Aufgabe erledigt — ein Video transkodieren, ein Bild skalieren — und dann bis zum nächsten schläft. Der Dispatcher weckt ihn auf Abruf, du zahlst nur die Sekunden des Rechnens.
Edge-artige Request-Handler
Ein HTTP-Handler, der sich wie eine Serverless-Funktion verhält — eine Anfrage rein, eine Antwort raus — aber in einer vollen Linux-microVM ohne Beschränkungen läuft und deinen exakten Prozess wiederherstellt, keinen leeren Container.
🔬 unter der Haube
For the curious: Idle Harbor uses Firecracker snapshot/restore — the same technology AWS uses for Lambda cold starts, except here the snapshot preserves your running process rather than a pre-initialized blank VM. The snapshot captures the full memory state: heap, stack, open file descriptors, everything your process had in flight.
- Encrypted at rest. The snapshot file is LUKS-encrypted under a per-service key stored in OpenBao — the same posture as your volumes and backups. Not even we can read it at rest.
- Clock resynced on wake. Time jumped while your process was frozen. We resync the guest clock before the process continues, so TLS caches, rate limiters, and anything else time-sensitive picks up correctly.
- RNG reseeded. Replaying an RNG state after a snapshot restore would be a security problem. We reseed the guest's entropy pool before your code runs again.
- TCP connections. Pre-snapshot connections are dead by the time the VM wakes — the idle window guarantees no caller is waiting. New connections establish normally after wake. If you rely on persistent outbound connections (database pools, queue consumers), your app code should reconnect on startup anyway; Idle Harbor makes it explicit.
- Node mobility. If the original node is full when you need to wake, the snapshot is transferred over the internal VLAN to a node with free capacity. Same region, same latency profile — you won't notice.
- Volumes stay attached. If your service has LUKS-encrypted volumes, they're properly unmounted before the snapshot and re-opened on wake. No data loss, no journal corruption.
⚖️ wann nicht zu verwenden
Idle Harbor ist nicht für Immer-an-Workloads:
- Langlebige WebSocket-Verbindungen. Clients trennen sich, sobald die VM schläft. Nutze ein Immer-an-Boot für Echtzeit-Apps.
- Queue-Consumer. Ein Consumer, der durch Nachrichten schläft, ist kaputt. Halte ihn immer-an oder nutze ein geplantes Wecksignal.
- Apps mit internem Cron. Plant deine App eigene Hintergrundarbeit, verschläft sie den Plan. Externalisiere den Trigger (ein Cron-HTTP-Call) und es klappt.
- Latenzkritische Pfade. Die erste Anfrage nach dem Schlaf dauert ~150–300 ms länger. Unsichtbar für Menschen; ein Problem für Zahlungsabwickler oder Health-Checks mit engem SLA.
Harbor ist eine Option, die du pro Dienst aktivierst, nie Standard. Die meisten Teams lassen ihre Prod-App immer-an und parken den Rest.