More resources aren't always better.
If an application can consume unlimited CPU or memory, one unexpected workload can affect everything else running on the same infrastructure.
That's why resource limits matter.
Imagine an Unexpected Loop
A small bug causes a process to consume increasing amounts of memory.
Without limits, it can continue growing until the system becomes unstable.
With reasonable limits, the problem can be contained.
The application may still fail, but the failure is less likely to affect unrelated services.
Resource Limits Are Not Performance Settings
A limit doesn't make your application faster.
It defines how much of a resource the application is allowed to consume.
Think of it as a boundary.
For example:
Application A → limited resources Application B → limited resources Database → dedicated resources
This makes infrastructure behavior more predictable.
But Don't Set Limits Randomly
A limit that's too low can cause unnecessary failures.
If your application legitimately needs more memory during builds or heavy workloads, an aggressive limit can become a problem.
Monitor actual usage first.
Then choose reasonable values.
Watch for Spikes
Average usage isn't always enough.
An application may normally use very little memory but require significantly more during:
Builds Image processing Large imports Report generation Traffic spikes
Look at both normal usage and peak usage.
Resource Management Is About Predictability
Production systems are easier to manage when you know roughly how much each service can consume.
You don't want one unexpected process to become the resource problem for everything else.
Measure usage, set sensible boundaries, and adjust them as your application grows.