Infrastructure
Service Management
Every application on the server is a managed unit — it starts on boot, restarts on failure, and can be observed, stopped, or reloaded independently without affecting anything else.
How services are managed
Each application runs as a systemd service unit. systemd is the Linux init system responsible for starting and supervising processes. Every service on this VPS has a unit file that declares how it should be launched, what user it runs as, which dependencies it requires, and what should happen if it crashes.
On every reboot, all services start automatically in the correct order. If a service crashes unexpectedly, systemd restarts it after a configurable cooldown — usually within a few seconds.
Benefits of this approach
Managing services through the OS init system keeps the architecture simple and auditable. There are no container runtimes or orchestration layers to maintain — just well-defined process supervision using tooling that ships with every modern Linux distribution.
- Zero-downtime on reboots — services are back within seconds of the OS coming up.
- Crash recovery is automatic and does not require on-call intervention for transient failures.
- Each service is isolated: stopping or redeploying one does not affect others.
- Logging is centralised via journald — all service output is queryable in one place.
- Dependencies are explicit — a service that needs the network won't start until the network is ready.