Horizontal Scaling or Vertical Scaling
Of course horizontal
scaling will be better but as always, application must support this design.
Monolithic applications can
be hard to scale horizontally.
Parallel-running applications like microservices can fit horizontal scaling much easier.
Additionally, application nature is so important.
If there occurs a high communication
need between the nodes when
scaled horizontally, this heavy communication
overhead may also be a performance problem and you may
prefer scaling vertically instead.
Vertical scaling is always easier. But as we all know,
when you give 2 times CPU, your performance does not scale twice. Because performance is an overall value from both
usage patterns, application behaviours, cpu-memory-disk-network all resource usages
together etc etc. Application patterns are other
examination issues but we want to
focus on hardware architecture for better vertical scaling. SPARC is abbreviation of
“Scalable Platform ARChitecture.”
SPARC hardware design cares scalability for decades. For
example, When you give 2 times
CPU resources, you generally gain 1.3
times performance. But
SPARC aims maximizing this gain near
to 2. It wont be 2 but the nearest maximum is valuable for scalability.
If you gain
1.7 or 1.8 times performance due to 2 times
CPU resource, it is SPARC’s
design success for better vertical
scaling instead gaining classical average 1.3 times performance.
Feel free to communicate by bulent.yucesoy@gmail.com