Jiahao Long

Getting the most out of a 1 GB VPS

March 2026 · ~5 min read

Small virtual servers are wonderful. For the price of a couple of coffees a month you get a real, always-on Linux machine with a public address. The catch is the memory budget: a single gigabyte disappears faster than you'd think once you start layering runtimes on top of each other. Here's how I keep mine comfortable.

Pick lean building blocks

The single biggest lever is choosing software that doesn't assume it owns the machine. A static binary written in Go or Rust will happily serve thousands of requests in a few dozen megabytes of RSS. The same workload behind a heavyweight application server can need ten times that before it even accepts a connection.

I serve this site with a single static binary and a few kilobytes of HTML. No database, no interpreter, no container runtime. It idles at a handful of megabytes.

Give yourself swap

Swap is not a substitute for RAM, but a small swap file turns "the OOM killer ate my process" into "things got briefly slow." On a 1 GB box I add half a gigabyte:

fallocate -l 512M /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

Add a matching line to /etc/fstab so it survives a reboot, and consider lowering vm.swappiness so the kernel only reaches for it under real pressure.

Watch what starts at boot

Distributions love to enable things you'll never use. systemctl list-units --type=service --state=running is a five-minute audit that often reclaims a surprising amount of memory. Disable what you don't need; you can always turn it back on.

Tune the network for long links

If your traffic crosses an ocean, congestion control matters more than throughput on paper. Modern kernels ship with BBR, which handles high-latency, slightly-lossy paths far better than the old default:

net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

Drop that in /etc/sysctl.d/, apply it, and you'll often see noticeably steadier transfers without spending a cent more.

The takeaway

A small server rewards restraint. Choose software that respects its limits, leave a little headroom, and a 1 GB machine will quietly do real work for years. The constraint is half the fun.

← Back home