Conceptual editorial illustration
AI-generated editorial illustration. The measurements and experiment results are presented separately below.

A small server can be useful long before it is powerful. The more important question is how much room your current workload leaves for the next thing.

On November 1, 2026, we inspected a shared Linux VPS already running several web, collection and database services. This is a report of that snapshot. It is not a promise that every 4 GB VPS can run the same mix.

The short answer: the machine reported 3,910 MiB of total memory and 1,423 MiB available at the time of the check. That available memory is a useful starting point for a new budget. It is not a verified allowance for a new application under peak load.

The sample, with its boundaries

MeasureObserved
Logical CPUs2
Total memory3,910 MiB
Available memory1,423 MiB
Swap total / free2,400 / 1,381 MiB
Free space on the root filesystem25.4 GiB
Sampling time2026-11-01, 14:33 UTC

The snapshot used the system memory report, a filesystem space query and one docker stats --no-stream sample. No load generator was running as part of this check. We did not measure sustained peak consumption, request latency under load or recovery after an out-of-memory event.

Download the reduced, public snapshot (JSON). It contains the aggregate measurements above, without access credentials or private service configuration.

A configured limit is not current usage

In the same sample, one worker used about 244 MiB against a 256 MiB container memory limit. That is close to its configured ceiling at that moment. It does not prove an ongoing failure, and it does not justify increasing every container limit.

A limit is a control on what a service may consume. A measurement describes what it did consume under specific conditions. Adding limits is useful when considering possible exposure; adding a single sample of usage is useful for understanding the present. Neither number alone is a peak-capacity test.

Make the next service earn its memory budget

  1. Record available memory while the existing services perform their ordinary work.
  2. Sample the new service separately: idle, a typical task, and a task large enough to reveal its working set.
  3. Leave room for the operating system, existing jobs and overlapping work. Treat an allowance as your choice, not a universal constant.
  4. Repeat the measurement after scheduling the new task. Check latency, errors and memory pressure together.

Our free VPS memory budget calculator performs the subtraction and exports a small CSV. Its sample values are editable examples. It cannot infer demand from a software name or replace measurements on your host.

Swap needs context

Some swap was occupied. A single snapshot cannot tell us whether that reflects old, inactive pages or sustained memory pressure. The useful follow-up is to look at swap activity and pressure over time, during actual jobs, alongside service behavior.

For this publication, static HTML and browser-side tools are a deliberate first choice. They can be served by the existing web server, without adding another database or a long-running application process. We have not benchmarked the site's maximum traffic capacity.

Sources and reproducibility

Limit: one host, one short sample, existing mixed workloads. These observations do not establish a safe application count, a benchmark ranking or production acceptance for another machine.