1 . SCALABILITY
Scalability is the ability of a system to handle increased load by adding resources. The key word here is "ability", a scalable system can grow to meet demand without requiring a complete architectural overhaul.
Measuring Scalability:

Performance Under Load:

VERTICAL SCALING:
Vertical scaling means adding more power to your existing machines. Instead of adding more servers, you upgrade to bigger ones.
- First choice as the whole structure remains same, same code can run for more people
- Can increase more CPUs, RAMs to increase memory, faster SSD for i/o bottlenecks, network card for better bandwidth
- Example: a chef is making food for 8 customers per hour, so you upgrade it with a Nepali to serve 15 customers per hour.
PROS:
- Simplicity, ease to do it, low complexity. ( 1 person easy to manage him instruct him control him)
- Low maintenance and overhead: of data partitioning, synchronisation, routing queries ( No need of defining work roles, less people = less maintenance).
- Performance: better latency, all things tightly coupled