A well designed system should be able to grow and contract as the number of grows and decreases. This is done primarily by scaling our resources.
Keep increasing the size of the memory(RAM) or processing CPU until everything is permanent. Vertical Scaling is most commonly used in applications and products of middle-range as well as small and middle-sized companies. However, even after using virtualization, whenever an improved performance is targeted, the risk for downtimes with it is much higher than using horizontal scaling.