Too Long; Didn't Read
There are a number of considerations that you as a developer, architect or engineering team have to make as your user base grows. Going from products with 10 to say 30 or a million and so forth has its considerations. There are two types of scaling we need to observe: vertical scalability and horizontal scalability. Vertical scalability involves upgrading the hardware and or or the network throughput. Vertical scaling involves upgrading hardware and/ or network throughput, adding more RAM, more storage, more CPU. Vertical Scalability involves increasing the number of cores to the server to reduce the context switching.