Search code examples
server

Scale up vs scale out


Which of these two server scaling options is more suitable? In first look, scale out would lead to network playing a bigger role, and hence related problems like latency etc coming in. So why should I go for scale out and not scale up?


Solution

  • It all depends on your use case.

    Scaling up can be good in the short term, but scaling up is finite, i.e. if you can no longer buy a bigger machine, you will be stuck. Also, costs will go up exponentially with bigger machines.

    Scaling out is "cheap" in terms of hardware but requires a little more thought (latency and consistency to name just a few). If done right, scaling out is effectively infinite.

    Scaling up can sometimes also require downtime whereas scaling out does not have that issue.

    So it all depends on your scaling needs. If you need to scale super fast (traffic spikes) scaling out is very interesting. If your traffic slowly grows but remains stable, you could start with scaling up, and convert to a scaling out strategy later on.