Troubleshooting
Server memory usage: how to read RAM pressure
Linux tries to use otherwise-idle memory for useful caching, so a server showing little “free” RAM can still be healthy. The important signals are available memory, swap behaviour, memory pressure, process growth, latency, and out-of-memory events.
Look at available memory, not only free memory
Filesystem cache can be reclaimed when applications need memory. A low free number by itself is less meaningful than whether the system has reclaimable cache and enough available memory to satisfy normal work.
Check which processes are growing
Sort by resident memory and compare with normal baselines. Application workers, databases, Java runtimes, container workloads, image processing, caches, and runaway processes can each have different expected patterns.
Treat swap and OOM events as evidence
Some swap use can be normal, but sustained heavy swapping with slow response suggests pressure. Kernel OOM kills are stronger evidence that the system could not satisfy allocations and terminated a process to recover.
Scale only after understanding the workload
More RAM is the correct fix when healthy normal demand exceeds capacity. It is not the correct first response to a memory leak, unbounded queue, misconfigured worker count, or one broken request consuming excessive memory.