Vertical scaling is basically makes the nodes stronger. If you have 1 server, make the server stronger with adding more hardware. Make optimization the hardware that will allow you to handle more requests.
Vertical scaling keeps your existing infrastructure but adding more computing power. Your existing code doesn’t need to change — you simply need to run the same code on machines with better specs. Vertical scaling means adding more resources to a single node and adding additional CPU, RAM, and DISK to cope with an increasing workload.
Basically, vertical scaling gives you the ability to increase your current hardware or software capacity, but it’s important to keep in mind that you can only increase it to the limits of your server. By scaling up, you increase the capacity of a single machine.
Vertical scaling allows data to live on a single node, and scaling spreads the load through CPU and RAM resources for your machines. But the system has hardware limitations that you can increate CPU and RAM. Also this will highly expensive when you reach the maximum capacity.
And if you have get millions of request, in that case having one server won’t be enough, because even the hardware has maximum capacity limitations. In this case we need to do horizontal scaling or scaling out.