Explanation of key concepts in a cloud computing
Source: Dev.to
Virtualization
Virtualization can be thought of as one physical computer acting like many computers. Instead of buying several separate machines, you purchase a single powerful server and split it into multiple “virtual” machines. Each virtual machine operates independently, as if it were its own physical computer.
Analogy: A large house divided into separate apartments—one building, many tenants.
Scalability
Scalability is the ability of a system or resource to grow or shrink in size easily based on demand. When an application gains more users, you can add more compute power; when usage drops, you can reduce resources to save costs.
Analogy: Adding more chairs when more guests arrive at a party and removing them when they leave.
Agility
Agility refers to how quickly a system can adapt to new requirements or changes. In technology, it means the ability to create, modify, or fix things rapidly without excessive overhead.
Analogy: Ordering food with a mobile app instead of cooking from scratch—faster and more flexible.
High Availability
High availability means the system is almost always online. If a component fails, another takes over instantly, so users hardly notice any interruption.
Analogy: A generator that turns on automatically when the main power goes off, keeping the lights on.
Fault Tolerance
Fault tolerance describes a situation where the system continues operating even when a component breaks. It not only recovers but keeps running without interruption.
Analogy: A car with two engines—if one fails, the other keeps the car moving.
Global Reach
Global reach indicates that a service (e.g., Azure) can be accessed from anywhere in the world, regardless of regional disruptions. Users in Africa, Europe, Asia, or any other location can connect to the application with low latency.
Analogy: WhatsApp works the same way whether you’re in Nigeria, the United States, or Japan.
Scalability vs. Elasticity
-
Scalability: The system can be expanded to handle increased load, typically through planned actions such as adding servers, storage, or capacity. It’s like renting a larger shop in anticipation of business growth.
-
Elasticity: The system automatically and instantly adjusts its resources up or down in response to demand. When traffic spikes, resources are added; when traffic drops, resources are removed—without manual intervention.